NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
ViewCollection.hxx
1//--------------------------------------------------------------------------
2// Copyright 2024 Siemens
3//--------------------------------------------------------------------------
4// C++接口到JA API的头文件
5//--------------------------------------------------------------------------
6//
7// 源文件:
8// ViewCollection.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/Display_Background.hxx>
24#include <NXOpen/Display_DownloadOfflineRenderingBuilder.hxx>
25#include <NXOpen/Display_EnvironmentBuilder.hxx>
26#include <NXOpen/Display_ExtractScene.hxx>
27#include <NXOpen/Display_GlobalIlluminationBuilder.hxx>
28#include <NXOpen/Display_IRayPlusStudioEditorBuilder.hxx>
29#include <NXOpen/Display_IRayPlusStudioPreferencesBuilder.hxx>
30#include <NXOpen/Display_Image.hxx>
31#include <NXOpen/Display_ImageBasedLighting.hxx>
32#include <NXOpen/Display_IrayPlusMaterialEditorBuilder.hxx>
33#include <NXOpen/Display_IrayPlusSimpleMaterialEditorBuilder.hxx>
34#include <NXOpen/Display_IrayPlusStudioAnimationBuilder.hxx>
35#include <NXOpen/Display_LightBuilder.hxx>
36#include <NXOpen/Display_Lighting.hxx>
37#include <NXOpen/Display_NonProportionalZoom.hxx>
38#include <NXOpen/Display_RayTracedStudioBuilder.hxx>
39#include <NXOpen/Display_RayTracedStudioEditorBuilder.hxx>
40#include <NXOpen/Display_RayTracedStudioPreferencesBuilder.hxx>
41#include <NXOpen/Display_Reflection.hxx>
42#include <NXOpen/Display_SaveImageFileBrowserBuilder.hxx>
43#include <NXOpen/Display_Scene.hxx>
44#include <NXOpen/Display_Shadows.hxx>
45#include <NXOpen/Display_Stage.hxx>
46#include <NXOpen/Display_StudioImageCaptureBuilder.hxx>
47#include <NXOpen/Display_VisualMaterialEditorBaseBuilder.hxx>
48#include <NXOpen/Display_VisualMaterialEditorBuilder.hxx>
49#include <NXOpen/Display_VisualMaterialEditorCoatingBuilder.hxx>
50#include <NXOpen/Display_VisualMaterialEditorEmissionBuilder.hxx>
51#include <NXOpen/Display_VisualMaterialEditorFinishBuilder.hxx>
52#include <NXOpen/Display_VisualMaterialEditorSettingsBuilder.hxx>
53#include <NXOpen/Display_VisualMaterialEditorTextureSpaceBuilder.hxx>
54#include <NXOpen/Display_VisualMaterialEditorTexturesBuilder.hxx>
55#include <NXOpen/Display_VisualMaterialEditorTransmissionBuilder.hxx>
56#include <NXOpen/Display_VisualMaterialEditorUtilitiesBuilder.hxx>
57#include <NXOpen/Display_Wall.hxx>
58#include <NXOpen/Gateway_ImageExportBuilder.hxx>
59#include <NXOpen/TaggedObjectCollection.hxx>
60#include <NXOpen/TaggedObject.hxx>
61#include <NXOpen/View.hxx>
62#include <NXOpen/libnxopencpp_exports.hxx>
63#ifdef _MSC_VER
64#pragma warning(push)
65#pragma warning(disable:4996)
66#endif
67#ifdef __GNUC__
68#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
69#endif
70namespace NXOpen
71{
72 class ViewCollection;
73 class BasePart;
74 class View;
75 namespace Display
76 {
77 class Background;
78 }
79 namespace Display
80 {
82 }
83 namespace Display
84 {
86 }
87 namespace Display
88 {
89 class ExtractScene;
90 }
91 namespace Display
92 {
94 }
95 namespace Display
96 {
97 class IRayPlusStudioEditorBuilder;
98 }
99namespace Display
100 {
102 }
103 namespace Display
104 {
105 class Image;
106 }
107 namespace Display
108 {
109 class ImageBasedLighting;
110 }
111 namespace Display
112 {
114 }
115 namespace Display
116 {
118 }
119 namespace Display
120 {
122 }
123 namespace Display
124 {
125 class LightBuilder;
126 }
127 namespace Display
128 {
129 class Lighting;
130 }
131 namespace Display
132 {
134 }
135 namespace Display
136 {
138 }
139 namespace Display
140 {
141 class RayTracedStudioEditorBuilder;
142 }
143 namespace Display
144 {
146 }
147 namespace Display
148 {
149 class Reflection;
150 }
151 namespace Display
152 {
154 }
155 namespace Display
156 {
157 class Scene;
158 }
159 namespace Display
160 {
161 class Shadows;
162 }
163 namespace Display
164 {
165 class Stage;
166 }
167 namespace Display
168 {
170 }
171 namespace Display
172 {
174 }
175 namespace Display
176 {
178 }
179 namespace Display
180 {
182 }
183 namespace Display
184 {
186 }
187 namespace Display
188 {
190 }
191 namespace Display
192 {
194 }
195 namespace Display
196 {
198 }
199namespace Display
200 {
202 }
203 namespace Display
204 {
206 }
207 namespace Display
208 {
210 }
211 namespace Display
212 {
213 class Wall;
214 }
215 namespace Gateway
216 {
217 class ImageExportBuilder;
218 }
219 class Light;
220 class ViewCollectionImpl;
226 class NXOPENCPPEXPORT ViewCollection : public NXOpen::TaggedObjectCollection
227 {
229 public:
230 struct HighEndRenderImageResults
231 {
232 public: int Iterations;
233 public: double Seconds;
234 public: HighEndRenderImageResults() :
235 Iterations(),
236 Seconds()
237 {
238 }
240 public: HighEndRenderImageResults(int iterationsInitial ,
241 double secondsInitial ) :
242 Iterations(iterationsInitial),
243 Seconds(secondsInitial)
244 {
245 }
246 };
247 private: ViewCollectionImpl * m_viewcollection_impl;
248 private: NXOpen::BasePart* m_owner;
250 public: explicit ViewCollection(NXOpen::BasePart *owner);
252 public:
254 tag_t Tag() const;
255 public: ~ViewCollection();
257 //lint -sem(NXOpen::ViewCollection::iterator::copy,initializer)
258 class iterator : public std::iterator<std::forward_iterator_tag, NXOpen::View *>
259 {
260 public:
262 iterator() : m_context(nullptr), m_current(NULL_TAG)
263 {
264 // coverity[uninit_member]
265 } //lint !e1401 m_state 未初始化
266
267 explicit iterator(NXOpen::ViewCollection *context) : m_context(context), m_current(NULL_TAG)
268 {
269 // coverity[uninit_member]
270 }//lint !e1401 m_state 未初始化
272
273 iterator(const iterator &other): m_context(nullptr), m_current(NULL_TAG)
274 {
275 copy(other);
276 }
277
278 iterator &operator =(const iterator &other)
279 {
280 if (&other != this)
281 copy(other);
282 return *this;
283 }
284
285 bool operator ==(const iterator &other) const
286 {
287 return m_current == other.m_current && m_context == other.m_context;
288 }
289
290 bool operator !=(const iterator &other) const
291 {
292 return !operator == (other);
293 }
294
295 NXOPENCPPEXPORT value_type operator * () const;
297 iterator & operator ++()
298{
299 next();
300 return *this;
301 }
302
303 iterator operator ++(int)
304 {
305 iterator tmp(*this);
306 ++*this;
307 return tmp;
308 }
309 private:
310 void copy(const iterator &other)
311 {
312 m_context = other.m_context;
313 m_current = other.m_current;
314 for (int i = 0; i < sizeof(m_state)/sizeof(m_state[0]); i++)
315 m_state[i] = other.m_state[i];
316 }
317 NXOPENCPPEXPORT void next();
318 NXOpen::ViewCollection *m_context;
319 tag_t m_current;
320 unsigned int m_state[8];
321 };
322
326 {
327 return iterator(this);
328 }
329
332 public: void Refresh
333 (
334 );
338 public: std::vector<NXOpen::View *> GetActiveViews
339 (
340 );
344 public: std::vector<NXString> GetCustomViews
345 (
346 );
352 (
353 );
358 (
359 );
364 (
365 NXOpen::View * selectedView ,
366 const NXString & newViewName ,
367 bool copyViewModifications ,
368 bool moveViewDependencies
369 );
374 (
375 NXOpen::View * selectedView ,
376 const char * newViewName ,
377 bool copyViewModifications ,
378 bool moveViewDependencies
379 );
383 public: void Save
384 (
385 );
394 (
395 const NXString & journalIdentifier
396 );
405 (
406 const char * journalIdentifier
407 );
415 public: void UnexpandWork
416 (
417 );
423 public: void FitAll
424 (
425 );
431 public: void Regenerate
432 (
433 );
440 public: void UpdateDisplay
441 (
442 );
447 (
448 NXOpen::View * view ,
449 bool makeReferencedObjects
450 );
455 (
456 NXOpen::View * view ,
457 bool makeReferencedObjects
458 );
463 public: NX_DEPRECATED("Deprecated in NX2406.0.0. Use NXOpen::ViewCollection::CreateShadowsForDisplayStyle overload instead.") NXOpen::Display::Shadows * CreateShadows
464 (
465 NXOpen::View * view
466 );
471 (
472 NXOpen::View * view ,
473 NXOpen::View::DisplayStyleType displayStyle
474 );
478 public: NXOpen::Display::Image * CreateImage
479 (
480 NXOpen::View * view
481 );
485 public: NXOpen::Display::Stage * CreateStage
486 (
487 NXOpen::View * view ,
488 bool makeReferencedObjects
489 );
493 public: NXOpen::Display::Wall * CreateWall
494 (
495 NXOpen::View * view ,
496 NXOpen::Display::Stage::WallType wallType
497 );
501 public: NXOpen::Display::Reflection * CreateReflection
502 (
503 NXOpen::View * view ,
504 bool makeReferencedObjects
505 );
509 public: NXOpen::Display::Lighting * CreateLighting
510 (
511 NXOpen::View * view
512 );
516 public: NXOpen::Display::LightBuilder * CreateLightBuilder
517 (
518 NXOpen::Light * light
519 );
523 public: NXOpen::Display::ImageBasedLighting * CreateImageBasedLighting
524 (
525 NXOpen::View * view ,
526 bool makeReferencedObjects
527 );
531 public: NXOpen::Display::ExtractScene * CreateExtractScene
532 (
533 NXOpen::View * view
534 );
538 public: NXOpen::Display::NonProportionalZoom * CreateNonProportionalZoom
539 (
540 );
544 public: NXOpen::Display::StudioImageCaptureBuilder * CreateStudioImageCaptureBuilder
545 (
546 );
551 (
552 NXOpen::View * selectedView ,
553 const NXString & newViewName ,
554 bool copyViewModifications ,
555 bool moveViewDependencies
556 );
561 (
562 NXOpen::View * selectedView ,
563 const char * newViewName ,
564 bool copyViewModifications ,
565 bool moveViewDependencies
566 );
570 public: void SaveView
571 (
572 NXOpen::View * view
573 );
579 (
580 NXOpen::View * view
581 );
585 public: NXOpen::Display::RayTracedStudioBuilder * CreateRayTracedStudioBuilder
586 (
587 );
591 public: NXOpen::Display::SaveImageFileBrowserBuilder * CreateSaveImageFileBrowserBuilder
592 (
593 );
597 public: NXOpen::Display::GlobalIlluminationBuilder * CreateGlobalIlluminationBuilder
598 (
599 );
603 public: NXOpen::Display::RayTracedStudioPreferencesBuilder * CreateRayTracedStudioPreferencesBuilder
604 (
605 );
610 public: NX_DEPRECATED("Deprecated in NX1980.0.0. Use NXOpen::Display::RayTracedStudioPreferencesBuilder instead.") NXOpen::Display::RayTracedStudioEditorBuilder * CreateRayTracedStudioEditorBuilder
611 (
612 );
617 public: NX_DEPRECATED("Deprecated in NX1980.0.0. Use NXOpen::Display::IRayPlusStudioPreferencesBuilder instead.") NXOpen::Display::IRayPlusStudioEditorBuilder * CreateIrayPlusStudioEditorBuilder
618 (
619 );
624 public: NX_DEPRECATED("Deprecated in NX2312.0.0. Use NXOpen::ViewCollection::CreateEnvironmentBuilderForDisplayStyle overload instead.") NXOpen::Display::EnvironmentBuilder * CreateEnvironmentBuilder
625 (
626 NXOpen::View * view ,
627 bool makeReferencedObjects
628 );
633 (
634 NXOpen::View * view ,
635 NXOpen::View::DisplayStyleType displayStyle ,
636 bool makeReferencedObjects
637 );
641 public: NXOpen::Display::IRayPlusStudioPreferencesBuilder * CreateIrayPlusStudioPreferencesBuilder
642 (
643 );
647 public: NXOpen::Display::DownloadOfflineRenderingBuilder * CreateDownloadOfflineRenderingBuilder
648 (
649 );
653 public: NXOpen::Display::IrayPlusStudioAnimationBuilder * CreateIrayPlusStudioAnimationBuilder
654 (
655 );
659 public: NXOpen::Display::IrayPlusSimpleMaterialEditorBuilder * CreateIrayPlusSimpleMaterialEditorBuilder
660 (
661 );
665 public: NXOpen::Display::IrayPlusMaterialEditorBuilder * CreateIrayPlusMaterialEditorBuilder
666 (
667 const NXString & materialName
668 );
672 NXOpen::Display::IrayPlusMaterialEditorBuilder * CreateIrayPlusMaterialEditorBuilder
673 (
674 const char * materialName
675 );
679 public: std::vector<NXOpen::View *> GetDisclosedModelViews
680 (
681 );
686 (
687 std::vector<NXString> & disclosurePurposes
688 );
693 (
694 const NXString & fileLocation
695 );
700 (
701 const char * fileLocation
702 );
707 (
708 );
712 public: NXOpen::Display::VisualMaterialEditorBuilder * CreateVisualMaterialEditorBuilder
713 (
714 const NXString & materialName
715 );
719 NXOpen::Display::VisualMaterialEditorBuilder * CreateVisualMaterialEditorBuilder
720 (
721 const char * materialName
722 );
726 public: NXOpen::Display::VisualMaterialEditorBaseBuilder * CreateVisualMaterialEditorBaseBuilder
727 (
728 const NXString & materialName
729 );
733 NXOpen::Display::VisualMaterialEditorBaseBuilder * CreateVisualMaterialEditorBaseBuilder
734 (
735 const char * materialName
736 );
740 public: NXOpen::Display::VisualMaterialEditorCoatingBuilder * CreateVisualMaterialEditorCoatingBuilder
741 (
742 const NXString & materialName
743 );
747 NXOpen::Display::VisualMaterialEditorCoatingBuilder * CreateVisualMaterialEditorCoatingBuilder
748 (
749 const char * materialName
750 );
754 public: NXOpen::Display::VisualMaterialEditorEmissionBuilder * CreateVisualMaterialEditorEmissionBuilder
755 (
756 const NXString & materialName
757 );
761 NXOpen::Display::VisualMaterialEditorEmissionBuilder * CreateVisualMaterialEditorEmissionBuilder
762 (
763 const char * materialName
764 );
768 public: NXOpen::Display::VisualMaterialEditorFinishBuilder * CreateVisualMaterialEditorFinishBuilder
769 (
770 const NXString & materialName
771 );
775 NXOpen::Display::VisualMaterialEditorFinishBuilder * CreateVisualMaterialEditorFinishBuilder
776 (
777 const char * materialName
778 );
782 public: NXOpen::Display::VisualMaterialEditorSettingsBuilder * CreateVisualMaterialEditorSettingsBuilder
783 (
784 const NXString & materialName
785 );
789 NXOpen::Display::VisualMaterialEditorSettingsBuilder * CreateVisualMaterialEditorSettingsBuilder
790 (
791 const char * materialName
792 );
796 public: NXOpen::Display::VisualMaterialEditorTextureSpaceBuilder * CreateVisualMaterialEditorTextureSpaceBuilder
797 (
798 const NXString & materialName
799 );
803 NXOpen::Display::VisualMaterialEditorTextureSpaceBuilder * CreateVisualMaterialEditorTextureSpaceBuilder
804 (
805 const char * materialName
806 );
810 public: NXOpen::Display::VisualMaterialEditorTexturesBuilder * CreateVisualMaterialEditorTexturesBuilder
811 (
812 const NXString & materialName
813 );
817 NXOpen::Display::VisualMaterialEditorTexturesBuilder * CreateVisualMaterialEditorTexturesBuilder
818 (
819 const char * materialName
820 );
824 public: NXOpen::Display::VisualMaterialEditorTransmissionBuilder * CreateVisualMaterialEditorTransmissionBuilder
825 (
826 const NXString & materialName
827 );
831 NXOpen::Display::VisualMaterialEditorTransmissionBuilder * CreateVisualMaterialEditorTransmissionBuilder
832 (
833 const char * materialName
834 );
838 public: NXOpen::Display::VisualMaterialEditorUtilitiesBuilder * CreateVisualMaterialEditorUtilitiesBuilder
839 (
840 const NXString & materialName
841 );
845 NXOpen::Display::VisualMaterialEditorUtilitiesBuilder * CreateVisualMaterialEditorUtilitiesBuilder
846 (
847 const char * materialName
848 );
853 public: NXOpen::Gateway::ImageExportBuilder * CreateImageExportBuilder
854 (
855 );
856 }; //lint !e1712 default constructor not defined for class
857}
858#ifdef _MSC_VER
859#pragma warning(pop)
860#endif
861#ifdef __GNUC__
862#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
863#pragma GCC diagnostic warning "-Wdeprecated-declarations"
864#endif
865#endif
866#undef EXPORTLIBRARY