NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
XformCollection.hxx
1//--------------------------------------------------------------------------
2// Copyright 2024 Siemens
3//--------------------------------------------------------------------------
4// Header for C++ interface to JA API
5//--------------------------------------------------------------------------
6//
7// Source File:
8// XformCollection.ja
9//
10// Generated by:
11// apiwrap
12//
13// WARNING:
14// This file is automatically generated - do not edit by hand
15//
16#pragma once
17#include <NXOpen/NXDeprecation.hxx>
18#include <iterator>
19#include <vector>
20#include <NXOpen/NXString.hxx>
21#include <NXOpen/Callback.hxx>
22#include <NXOpen/TaggedObjectCollection.hxx>
23#include <NXOpen/SmartObject.hxx>
24#include <NXOpen/TaggedObject.hxx>
25#include <NXOpen/type.hxx>
26#include <NXOpen/ugmath.hxx>
27#include <NXOpen/libnxopencpp_exports.hxx>
28#ifdef _MSC_VER
29#pragma warning(push)
30#pragma warning(disable:4996)
31#endif
32#ifdef __GNUC__
33#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
34#endif
35namespace NXOpen
36{
37 class XformCollection;
38 class BasePart;
39 class Xform;
40 namespace Assemblies
41 {
42 class Component;
43 }
44 namespace Assemblies
45 {
46 class Explosion;
47 }
48 class Axis;
49 class CoordinateSystem;
50 class Direction;
52 class Expression;
53 class ICurve;
55 class NXObject;
56 class Offset;
57 class Point;
58 class Scalar;
59 class View;
60 class XformCollectionImpl;
65 class NXOPENCPPEXPORT XformCollection : public NXOpen::TaggedObjectCollection
66 {
77
93 private: XformCollectionImpl * m_xformcollection_impl;
94 private: NXOpen::BasePart* m_owner;
96 public: explicit XformCollection(NXOpen::BasePart *owner);
98 public:
100 tag_t Tag() const;
101 public: ~XformCollection();
103 //lint -sem(NXOpen::XformCollection::iterator::copy,initializer)
104 class iterator : public std::iterator<std::forward_iterator_tag, NXOpen::Xform *>
105 {
106 public:
108 iterator() : m_context(nullptr), m_current(NULL_TAG)
109 {
110 // coverity[uninit_member]
111 } //lint !e1401 m_state is not initialized
112
113 explicit iterator(NXOpen::XformCollection *context) : m_context(context), m_current(NULL_TAG)
114 {
115 // coverity[uninit_member]
116 }//lint !e1401 m_state is not initialized
118
119 iterator(const iterator &other): m_context(nullptr), m_current(NULL_TAG)
120 {
121 copy(other);
122 }
123
124 iterator &operator =(const iterator &other)
125 {
126 if (&other != this)
127 copy(other);
128 return *this;
129 }
130
131 bool operator ==(const iterator &other) const
132 {
133 return m_current == other.m_current && m_context == other.m_context;
134 }
135
136 bool operator !=(const iterator &other) const
137 {
138 return !operator == (other);
139 }
140
141 NXOPENCPPEXPORT value_type operator * () const;
143 iterator & operator ++()
144 {
145 next();
146 return *this;
147 }
148
149 iterator operator ++(int)
150 {
151 iterator tmp(*this);
152 ++*this;
153 return tmp;
154 }
155 private:
156 void copy(const iterator &other)
157 {
158 m_context = other.m_context;
159 m_current = other.m_current;
160 for (int i = 0; i < sizeof(m_state)/sizeof(m_state[0]); i++)
161 m_state[i] = other.m_state[i];
162 }
163 NXOPENCPPEXPORT void next();
164 NXOpen::XformCollection *m_context;
165 tag_t m_current;
166 unsigned int m_state[8];
167 };
168
172 {
173 return iterator(this);
174 }
175
181 (
182 const NXOpen::Point3d & origin ,
183 const NXOpen::Vector3d & xDirection ,
184 const NXOpen::Vector3d & yDirection ,
186 double scale
187 );
194 (
195 const NXOpen::Point3d & origin ,
196 const NXOpen::Matrix3x3 & orientation ,
198 double scale
199 );
207 (
209 double scale
210 );
217 (
218 NXOpen::Point * point1 ,
219 NXOpen::Point * point2 ,
220 NXOpen::Point * point3 ,
222 double scale
223 );
230 (
235 double scale
236 );
242 (
244 NXOpen::Point * point0 ,
245 NXOpen::Point * point1 ,
246 NXOpen::Scalar * rotationScalarX ,
247 NXOpen::Scalar * rotationScalarY ,
248 NXOpen::Scalar * rotationScalarZ ,
249 int rotationOption ,
254 double scale
255 );
261 (
262 NXOpen::View * view ,
264 );
270 (
272 NXOpen::Offset * point0 ,
275 NXOpen::Offset * point1 ,
276 NXOpen::Scalar * rotationScalarX ,
277 NXOpen::Scalar * rotationScalarY ,
278 NXOpen::Scalar * rotationScalarZ ,
279 int rotationOption ,
284 double scale
285 );
291 (
293 const NXOpen::Vector3d & originOffset ,
294 const NXOpen::Matrix3x3 & trasformMatrix ,
296 double scale
297 );
303 (
304 NXOpen::Point * origin ,
305 NXOpen::Direction * xDirection ,
306 NXOpen::Direction * yDirection ,
308 double scale
309 );
315 (
316 NXOpen::Point * origin ,
317 NXOpen::Direction * xDirection ,
318 NXOpen::Direction * zDirection ,
320 double scale
321 );
327 (
328 NXOpen::Point * origin ,
329 NXOpen::Direction * yDirection ,
330 NXOpen::Direction * zDirection ,
332 double scale
333 );
339 (
340 NXOpen::Direction * xDirection ,
341 NXOpen::Direction * yDirection ,
343 double scale
344 );
350 (
352 NXOpen::Direction * axis ,
354 double scale
355 );
360 (
361 NXOpen::Point * xPoint ,
362 NXOpen::Axis * zAxis ,
364 );
369 (
370 NXOpen::Point * point ,
371 NXOpen::Point * helperPoint ,
372 NXOpen::ICurve * curve ,
374 );
380 (
382 NXOpen::Assemblies::Component * contextObject ,
384 );
391 (
393 double scale
394 );
401 (
402 NXOpen::NXObject * object ,
404 );
410 (
411 NXOpen::NXObject * object ,
414 );
421 (
422 NXOpen::NXObject * object ,
424 bool forceXformCreation ,
425 NXOpen::NXObject ** proto
426 );
432 (
434 NXOpen::Assemblies::Component * sourceComponent ,
435 NXOpen::Assemblies::Component * destComponent ,
437 );
445 (
446 NXOpen::Point * origin ,
447 NXOpen::XYZAxis axis ,
448 NXOpen::Direction * direction ,
449 NXOpen::Scalar * scale ,
451 );
457 (
458 NXOpen::Xform * xform ,
460 );
466 (
467 NXOpen::Direction * direction ,
468 NXOpen::Expression * distance ,
470 );
476 (
477 NXOpen::Point * origin ,
478 NXOpen::Point * measure ,
479 NXOpen::Direction * vector ,
480 NXOpen::Expression * distance ,
481 NXOpen::Expression * originDistance ,
483 );
489 (
490 NXOpen::Axis * axis ,
491 NXOpen::Point * point ,
492 NXOpen::Expression * distance ,
493 NXOpen::Expression * originDistance ,
495 );
501 (
502 NXOpen::Axis * axis ,
503 NXOpen::Expression * angle ,
505 );
511 (
512 NXOpen::Point * from ,
513 NXOpen::Point * to ,
515 );
521 (
522 NXOpen::Axis * vector ,
523 NXOpen::Point * start ,
526 );
532 (
533 NXOpen::Axis * axis ,
534 NXOpen::Direction * vector ,
536 );
553 (
557 );
563 (
564 NXOpen::Expression * distance ,
565 NXOpen::Expression * angle ,
566 NXOpen::Axis * dirr ,
567 NXOpen::Direction * angulardirr ,
569 );
575 (
576 const std::vector<NXOpen::Scalar *> & org ,
577 const std::vector<NXOpen::Scalar *> & mtx ,
579 );
585 (
586 const std::vector<NXOpen::Scalar *> & delta ,
588 );
594 (
596 NXOpen::Direction * xDirection ,
597 NXOpen::Point * point ,
599 double scale ,
600 bool flipXDirection ,
601 bool flipZDirection
602 );
608 (
610 NXOpen::Direction * yDirection ,
611 NXOpen::Point * point ,
613 double scale ,
614 bool flipYDirection ,
615 bool flipZDirection
616 );
623 (
625 NXOpen::Xform * xform1 ,
626 NXOpen::Xform * xform2
627 );
634 (
636 NXOpen::Point * origin ,
637 NXOpen::Point * pPoint ,
638 NXOpen::Point * qPoint ,
639 double scale ,
641 );
647 (
649 NXOpen::Point * originPoint ,
651 NXOpen::Scalar * rotationScalarX ,
652 NXOpen::Scalar * rotationScalarY ,
653 NXOpen::Scalar * rotationScalarZ ,
654 double scale ,
656 );
657 }; //lint !e1712 default constructor not defined for class
658}
659#ifdef _MSC_VER
660#pragma warning(pop)
661#endif
662#ifdef __GNUC__
663#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
664#pragma GCC diagnostic warning "-Wdeprecated-declarations"
665#endif
666#endif
667#undef EXPORTLIBRARY