NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
SketchCollection.hxx
1//--------------------------------------------------------------------------
2// Copyright 2024 Siemens
3//--------------------------------------------------------------------------
4// C++接口至JA API的头文件
5//--------------------------------------------------------------------------
6//
7// 源文件:
8// SketchCollection.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/BasePart.hxx>
23#include <NXOpen/ConvertToFromReferenceBuilder.hxx>
24#include <NXOpen/CurveSnapOptionsBuilder.hxx>
25#include <NXOpen/InferredConstraintsBuilder.hxx>
26#include <NXOpen/TaggedObjectCollection.hxx>
27#include <NXOpen/RelationFinderSettingsBuilder.hxx>
28#include <NXOpen/SimpleSketchInPlaceBuilder.hxx>
29#include <NXOpen/SketchAlongPathBuilder.hxx>
30#include <NXOpen/SketchAngularDimensionBuilder.hxx>
31#include <NXOpen/SketchArcBuilder.hxx>
32#include <NXOpen/SketchAssociativeTrim.hxx>
33#include <NXOpen/SketchAssociativeTrimBuilder.hxx>
34#include <NXOpen/SketchAutoConstrainBuilder.hxx>
35#include <NXOpen/SketchAutoDimensionBuilder.hxx>
36#include <NXOpen/SketchChamferBuilder.hxx>
37#include <NXOpen/SketchConicBuilder.hxx>
38#include <NXOpen/SketchConstraintBuilder.hxx>
39#include <NXOpen/SketchCornerBuilder.hxx>
40#include <NXOpen/SketchDefineWorkRegionBuilder.hxx>
41#include <NXOpen/SketchDimensionBuilder.hxx>
42#include <NXOpen/SketchDimensionPreviewer.hxx>
43#include <NXOpen/SketchDragGeometryBuilder.hxx>
44#include <NXOpen/SketchEditDefiningSectionBuilder.hxx>
45#include <NXOpen/SketchEditDimensionValueBuilder.hxx>
46#include <NXOpen/SketchEditParametersBuilder.hxx>
47#include <NXOpen/SketchEllipseBuilder.hxx>
48#include <NXOpen/SketchFilletBuilder.hxx>
49#include <NXOpen/SketchFindMovableObjectsBuilder.hxx>
50#include <NXOpen/SketchFixObjectsBuilder.hxx>
51#include <NXOpen/SketchIgnoreRelationBuilder.hxx>
52#include <NXOpen/SketchInDraftingBuilder.hxx>
53#include <NXOpen/SketchInPlaceBuilder.hxx>
54#include <NXOpen/SketchIncludeGeometryBuilder.hxx>
55#include <NXOpen/SketchLineBuilder.hxx>
56#include <NXOpen/SketchLinearDimensionBuilder.hxx>
57#include <NXOpen/SketchMakeCoincidentBuilder.hxx>
58#include <NXOpen/SketchMakeCollinearBuilder.hxx>
59#include <NXOpen/SketchMakeEqualBuilder.hxx>
60#include <NXOpen/SketchMakeHorizontalBuilder.hxx>
61#include <NXOpen/SketchMakeMidpointAlignedBuilder.hxx>
62#include <NXOpen/SketchMakeParallelBuilder.hxx>
63#include <NXOpen/SketchMakePerpendicularBuilder.hxx>
64#include <NXOpen/SketchMakePerpendicularToStringBuilder.hxx>
65#include <NXOpen/SketchMakePointOnStringBuilder.hxx>
66#include <NXOpen/SketchMakeSymmetricBuilder.hxx>
67#include <NXOpen/SketchMakeTangentBuilder.hxx>
68#include <NXOpen/SketchMakeTangentToStringBuilder.hxx>
69#include <NXOpen/SketchMakeUniformScaleBuilder.hxx>
70#include <NXOpen/SketchMakeVerticalBuilder.hxx>
71#include <NXOpen/SketchManageSymmetryLinesBuilder.hxx>
72#include <NXOpen/SketchMirrorPatternBuilder.hxx>
73#include <NXOpen/SketchOffset.hxx>
74#include <NXOpen/SketchOffsetBuilder.hxx>
75#include <NXOpen/SketchPasteBuilder.hxx>
76#include <NXOpen/SketchPattern.hxx>
77#include <NXOpen/SketchPatternBuilder.hxx>
78#include <NXOpen/SketchPolygon.hxx>
79#include <NXOpen/SketchPolygonBuilder.hxx>
80#include <NXOpen/SketchProjectBuilder.hxx>
81#include <NXOpen/SketchQuickExtendBuilder.hxx>
82#include <NXOpen/SketchQuickTrimBuilder.hxx>
83#include <NXOpen/SketchRadialDimensionBuilder.hxx>
84#include <NXOpen/SketchRapidDimensionBuilder.hxx>
85#include <NXOpen/SketchRelationBuilder.hxx>
86#include <NXOpen/SketchRemoteFindingBuilder.hxx>
87#include <NXOpen/SketchSilhouetteBuilder.hxx>
88#include <NXOpen/SketchSlotBuilder.hxx>
89#include <NXOpen/SketchSymmetricBuilder.hxx>
90#include <NXOpen/SketchWorkRegionBuilder.hxx>
91#include <NXOpen/TaggedObject.hxx>
92#include <NXOpen/libnxopencpp_exports.hxx>
93#ifdef _MSC_VER
94#pragma warning(push)
95#pragma warning(disable:4996)
96#endif
97#ifdef __GNUC__
98#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
99#endif
100namespace NXOpen
101{
102 class SketchCollection;
103 class Part;
104 class Sketch;
105 namespace Annotations
106 {
107 class AngularDimension;
108 }
109namespace Annotations
110 {
111 class Dimension;
112 }
115 namespace Features
116 {
117 class Feature;
118 }
120 class NXObject;
125 class SketchArcBuilder;
131 class SketchConicBuilder;
134 class SketchDefineWorkRegionBuilder;
136 class SketchDimensionPreviewer;
143 class SketchFilletBuilder;
154 class SketchLineBuilder;
172 class SketchOffset;
174 class SketchPasteBuilder;
175 class SketchPattern;
177 class SketchPolygon;
187 class SketchSlotBuilder;
190 class SmartObject;
191 class SketchCollectionImpl;
196 {
197 private: SketchCollectionImpl * m_sketchcollection_impl;
198 private: NXOpen::Part* m_owner;
200 public: explicit SketchCollection(NXOpen::Part *owner);
202 public:
204 tag_t Tag() const;
205 public: ~SketchCollection();
207 //lint -sem(NXOpen::SketchCollection::iterator::copy,initializer)
208 class iterator : public std::iterator<std::forward_iterator_tag, NXOpen::Sketch *>
209 {
210 public:
212 iterator() : m_context(nullptr), m_current(NULL_TAG)
213{
214 // coverity[uninit_member]
215 } //lint !e1401 m_state is not initialized
216
217 explicit iterator(NXOpen::SketchCollection *context) : m_context(context), m_current(NULL_TAG)
218 {
219 // coverity[uninit_member]
220 }//lint !e1401 m_state is not initialized
222
223 iterator(const iterator &other): m_context(nullptr), m_current(NULL_TAG)
224 {
225 copy(other);
226 }
227
228 iterator &operator =(const iterator &other)
229 {
230 if (&other != this)
231 copy(other);
232 return *this;
233 }
234
235 bool operator ==(const iterator &other) const
236 {
237 return m_current == other.m_current && m_context == other.m_context;
238 }
239
240 bool operator !=(const iterator &other) const
241 {
242 return !operator == (other);
243 }
244
245 NXOPENCPPEXPORT value_type operator * () const;
247 iterator & operator ++()
248 {
249 next();
250 return *this;
251 }
252
253 iterator operator ++(int)
254 {
255 iterator tmp(*this);
256 ++*this;
257 return tmp;
258 }
259 private:
260 void copy(const iterator &other)
261 {
262 m_context = other.m_context;
263 m_current = other.m_current;
264 for (int i = 0; i < sizeof(m_state)/sizeof(m_state[0]); i++)
265 m_state[i] = other.m_state[i];
266 }
267 NXOPENCPPEXPORT void next();
268 NXOpen::SketchCollection *m_context;
269 tag_t m_current;
270 unsigned int m_state[8];
271 };
272
276 {
277 return iterator(this);
278 }
279
285 (
286 const NXString & name
287 );
294 (
295 const char * name
296 );
301 (
302 NXOpen::SmartObject * geometry
303 );
305
308 public: NXOpen::SketchDimensionPreviewer * GetDimensionPreviewer
309 (
310 );
312
316 (
318 );
323 (
325 );
330 (
331 NXOpen::Features::Feature * operation
332 );
337 (
338 );
343 (
344 );
349 (
350 NXOpen::SketchOffset * offCon
351 );
356 (
358 );
363 (
364 );
369 (
370 );
375 (
377 );
382 (
383 );
388 (
389 );
394 public: NX_DEPRECATED("在 NX11.0.0 中已过时。请使用 NXOpen::SketchCollection::CreateSketchInPlaceBuilder2 代替。") NXOpen::SketchInPlaceBuilder * CreateNewSketchInPlaceBuilder
395 (
396 NXOpen::Sketch * operation
397 );
402 (
403 NXOpen::Sketch * operation
404 );
409 (
410 );
415 (
416 NXOpen::Sketch * operation
417 );
423 (
424 );
430 (
431 NXOpen::NXObject * ellipse
432 );
438 (
439 NXOpen::NXObject * conic
440 );
446 (
447 );
453 (
454 );
459 (
460 NXOpen::SketchPattern * con
461 );
466 (
467 NXOpen::SketchPattern * con
468 );
474 (
475 );
481 (
482 NXOpen::SketchPolygon * polygonconstraint
483 );
488 (
489 const std::vector<NXOpen::Sketch *> & sketches
490 );
496 (
497 );
502 (
503 );
509 (
510 NXOpen::Annotations::AngularDimension * angularDimension
512 );
518 (
519 NXOpen::Annotations::Dimension * linearDimension
521 );
527 (
528 );
534 (
535 NXOpen::Annotations::Dimension * radialDimension
536 );
541 (
542 );
547 (
548 );
553 (
554 );
559 (
560 );
565 (
566 );
571 (
572 );
577 (
578 );
583 (
584 );
589 (
590 );
595 (
596 );
601 (
602 );
607 (
608 );
613 (
614 );
619 (
620 );
625 (
626 );
632 (
633 NXOpen::Annotations::Dimension * dimension
634 );
640 (
641 NXOpen::SmartObject * includedObject
642 );
647 (
648 );
653 public: NX_DEPRECATED("Deprecated in NX1980.0.0. Use NXOpen::SketchWorkRegionBuilder instead.") NXOpen::SketchDefineWorkRegionBuilder * CreateDefineWorkRegionBuilder
654 (
655 );
660 (
661 );
666 (
667 );
672 (
673 );
678 (
679 );
684 (
685 );
690 (
691 NXOpen::Sketch * operation
692 );
697 (
698 );
703 (
704 );
709 (
710 );
712
715 public: NXOpen::SketchArcBuilder * CreateArcBuilder
716 (
717 );
719
723 (
724 );
729 (
730 NXOpen::Features::Feature * silhouettefeature
731 );
736 (
737 );
739
742 public: NXOpen::SketchFilletBuilder * CreateFilletBuilder
743 (
744 );
746 }; //lint !e1712 default constructor not defined for class
747}
748#ifdef _MSC_VER
749#pragma warning(pop)
750#endif
751#ifdef __GNUC__
752#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
753#pragma GCC diagnostic warning "-Wdeprecated-declarations"
754#endif
755#endif
756#undef EXPORTLIBRARY