NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
DirectionCollection.hxx
1//--------------------------------------------------------------------------
2// Copyright 2024 Siemens
3//--------------------------------------------------------------------------
4// C++接口的JA API头文件
5//--------------------------------------------------------------------------
6//
7// 源文件:
8// DirectionCollection.ja
9//
10// 生成方式:
11// apiwrap
12//
13// 警告:
14// 此文件由自动生成 - 请勿手动编辑
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/Direction.hxx>
23#include <NXOpen/TaggedObjectCollection.hxx>
24#include <NXOpen/ScCollector.hxx>
25#include <NXOpen/SmartObject.hxx>
26#include <NXOpen/TaggedObject.hxx>
27#include <NXOpen/type.hxx>
28#include <NXOpen/ugmath.hxx>
29#include <NXOpen/libnxopencpp_exports.hxx>
30#ifdef _MSC_VER
31#pragma warning(push)
32#pragma warning(disable:4996)
33#endif
34#ifdef __GNUC__
35#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
36#endif
37namespace NXOpen
38{
40 class BasePart;
41 class Direction;
42 class Conic;
43 class DatumAxis;
44 class Expression;
45 class Face;
46 class IBaseCurve;
47 class IBasePlane;
49 class Line;
50 class Point;
51 namespace Routing
52 {
53 class ControlPoint;
54 }
55 namespace Routing
56 {
57 class Port;
58 }
59 class ScCollector;
60 class Scalar;
61 class Sketch;
62 class SmartObject;
63 class Xform;
64 class DirectionCollectionImpl;
70 {
71 private: DirectionCollectionImpl * m_directioncollection_impl;
72 private: NXOpen::BasePart* m_owner;
74 public: explicit DirectionCollection(NXOpen::BasePart *owner);
76 public:
78 tag_t Tag() const;
79 public: ~DirectionCollection();
81 //lint -sem(NXOpen::DirectionCollection::iterator::copy,initializer)
82 class iterator : public std::iterator<std::forward_iterator_tag, NXOpen::Direction *>
83 {
84 public:
86 iterator() : m_context(nullptr), m_current(NULL_TAG)
87 {
88 // coverity[uninit_member]
89 } //lint !e1401 m_state 未初始化
90
91 explicit iterator(NXOpen::DirectionCollection *context) : m_context(context), m_current(NULL_TAG)
92{
93 // coverity[uninit_member]
94 }//lint !e1401 m_state未初始化
96
97 iterator(const iterator &other): m_context(nullptr), m_current(NULL_TAG)
98 {
99 copy(other);
100 }
101
102 iterator &operator =(const iterator &other)
103 {
104 if (&other != this)
105 copy(other);
106 return *this;
107 }
108
109 bool operator ==(const iterator &other) const
110 {
111 return m_current == other.m_current && m_context == other.m_context;
112 }
113
114 bool operator !=(const iterator &other) const
115 {
116 return !operator == (other);
117 }
118
119 NXOPENCPPEXPORT value_type operator * () const;
121 iterator & operator ++()
122 {
123 next();
124 return *this;
125 }
126
127 iterator operator ++(int)
128 {
129 iterator tmp(*this);
130 ++*this;
131 return tmp;
132 }
133 private:
134 void copy(const iterator &other)
135 {
136 m_context = other.m_context;
137 m_current = other.m_current;
138 for (int i = 0; i < sizeof(m_state)/sizeof(m_state[0]); i++)
139 m_state[i] = other.m_state[i];
140 }
141 NXOPENCPPEXPORT void next();
143 tag_t m_current;
144 unsigned int m_state[8];
145 };
146
150 {
151 return iterator(this);
152 }
153
157 (
158 const NXOpen::Point3d & origin ,
159 const NXOpen::Vector3d & vector ,
161 );
166 (
167 NXOpen::Line * line ,
168 NXOpen::Sense sense ,
170 );
175 (
176 NXOpen::IBaseCurve * edge ,
177 NXOpen::Sense sense ,
179 );
184 (
185 NXOpen::DatumAxis * datumAxis ,
186 NXOpen::Sense sense ,
188 );
193 (
194 NXOpen::Routing::ControlPoint * startPoint ,
197 );
202 (
203 NXOpen::Point * startPoint ,
204 NXOpen::Point * endPoint ,
206 );
211 (
213 NXOpen::Sense sense ,
215 );
220 (
221 NXOpen::IBasePlane * plane ,
222 NXOpen::Sense sense ,
224 );
229 (
230 NXOpen::Sketch * plane ,
231 NXOpen::Sense sense ,
233 );
238 (
239 NXOpen::Conic * conic ,
240 NXOpen::Sense sense ,
242 );
247 (
248 NXOpen::IBaseCurve * icurve ,
249 NXOpen::Scalar * t ,
251 NXOpen::Sense sense ,
253 );
258 (
259 NXOpen::IBaseCurve * icurve ,
260 NXOpen::Point * point ,
262 NXOpen::Sense sense ,
264 );
272 (
273 NXOpen::Point * atPoint ,
274 NXOpen::IBaseCurve * curve ,
276 NXOpen::Sense sense ,
278 );
283 (
284 NXOpen::Face * face ,
285 NXOpen::Scalar * u ,
286 NXOpen::Scalar * v ,
287 NXOpen::Sense sense ,
289 );
294 (
295 NXOpen::Face * face ,
296 NXOpen::Scalar * u ,
297 NXOpen::Scalar * v ,
298 bool absoluteUv ,
300 NXOpen::Direction * sectionDirection ,
301 NXOpen::Sense sense ,
303 );
308 (
309 NXOpen::Face * face ,
310 NXOpen::Scalar * u ,
311 NXOpen::Scalar * v ,
312 bool absoluteUv ,
313 NXOpen::Scalar * sectionAngle ,
314 NXOpen::Sense sense ,
316 );
324 (
325 NXOpen::Point * atPoint ,
326 NXOpen::Face * face ,
328 NXOpen::SmartObject * sectionDirection ,
329 NXOpen::Sense sense ,
331 );
336 (
337 NXOpen::Direction * directionExtract ,
338 NXOpen::Xform * xform ,
340 );
345 (
346 NXOpen::Point * point ,
347 const NXOpen::Vector3d & vector
348 );
353 (
354 NXOpen::Face * geomObj ,
355 NXOpen::Point * point ,
356 NXOpen::Sense sense ,
358 );
363 (
364 NXOpen::Direction * direction ,
366 );
371 (
372 NXOpen::Routing::Port * port ,
373 NXOpen::Sense sense ,
375 );
381 (
382 NXOpen::Direction * direction1 ,
383 NXOpen::Direction * direction2 ,
385 );
391 (
392 NXOpen::Point * point ,
393 NXOpen::Expression * exp ,
394 NXOpen::Sense sense ,
396 );
402 (
404 NXOpen::Point * point ,
405 NXOpen::Sense sense ,
407 );
416 (
417 NXOpen::ScCollector * faces ,
418 NXOpen::Point * point ,
419 NXOpen::Sense sense ,
421 );
427 (
429 NXOpen::Sense sense ,
431 );
437 (
439 NXOpen::Point * point ,
440 NXOpen::Sense sense ,
442 );
448 (
449 NXOpen::IBaseCurve * icurve ,
450 NXOpen::Point * point ,
452 NXOpen::Sense sense ,
454 );
460 (
461 NXOpen::IBaseCurve * conic ,
462 NXOpen::Sense sense ,
464 );
473 (
474 NXOpen::ScCollector * faces ,
475 NXOpen::Point * point ,
476 NXOpen::Sense sense ,
478 );
479}; //lint !e1712 类未定义默认构造函数
480}
481#ifdef _MSC_VER
482#pragma warning(pop)
483#endif
484#ifdef __GNUC__
485#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
486#pragma GCC diagnostic warning "-Wdeprecated-declarations"
487#endif
488#endif
489#undef EXPORTLIBRARY