< Home

< Table of Contents

REFERENCE MANUAL

sprk_exchange.h
1 // Copyright (c) 1998-2014 by Tech Soft 3D, Inc.
2 //
3 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc.,
4 // and considered a trade secret as defined under civil and criminal statutes.
5 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of
6 // unauthorized use or misappropriation of its trade secrets. Use of this information
7 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under
8 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use.
9 
10 #ifndef SPRK_EXCHANGE_H
11 #define SPRK_EXCHANGE_H
12 
13 #include "sprk.h"
14 
15 typedef void A3DEntity;
16 
17 #ifdef _MSC_VER
18 #ifndef STATIC_APP
19 # ifdef SPROCKETS
20 # define EXCHANGE_API __declspec (dllexport)
21 # else
22 # define EXCHANGE_API __declspec (dllimport)
23 # endif
24 #endif
25 #else
26 # include <stddef.h>
27 # if defined(LINUX_SYSTEM) && defined(SPROCKETS)
28 # ifndef STATIC_APP
29 # define EXCHANGE_API __attribute__ ((visibility ("default")))
30 # endif
31 # endif
32 #endif
33 
34 #ifndef EXCHANGE_API
35 # define EXCHANGE_API
36 #endif
37 
38 namespace HPS
39 {
40 
42 class EXCHANGE_API Exchange
43 {
44 public:
45 
46  class Component;
47  class Configuration;
48  class Sheet;
50 
51  typedef std::vector<Configuration, Allocator<Configuration> > ConfigurationArray;
52  typedef std::vector<Sheet, Allocator<Sheet> > SheetArray;
53  typedef IntArray ParasolidEntityArray;
54 
57  enum class Units
58  {
59  Unknown,
60  Point,
61  Inch,
62  Millimeter,
63  Centimeter,
64  Pica,
65  Foot,
66  Yard,
67  Meter,
68  Kilometer,
69  Mile
70  };
71 
72  class TranslationNotifier;
73  class ExportParasolidOptionsKit;
74 
77  class EXCHANGE_API Component : public Component
78  {
79  public:
81  Component();
82 
86  Component(Component const & in_that);
87 
90  Component(Exchange::Component const & in_that);
91 
94  Component(Exchange::Component && in_that);
95 
96  virtual ~Component();
97 
98  Type ObjectType() const { return Type::ExchangeComponent; }
99 
100 #ifndef _MSC_VER
101  Component & operator=(Component const & in_that) = default;
102 #endif
103 
107  Component & operator=(Exchange::Component && in_that);
108 
109 
112  A3DEntity * GetExchangeEntity() const;
113 
114 
120  void Tessellate(TessellationOptionsKit const & in_options);
121 
127  TranslationNotifier Translate(Units in_units);
128  };
129 
131  class EXCHANGE_API Sheet : public Exchange::Component
132  {
133  public:
135  Sheet();
136 
140  Sheet(Component const & in_that);
141 
145  Sheet(Component const & in_that);
146 
149  Sheet(Sheet const & in_sheet);
150 
154  Sheet(Sheet && in_that);
155 
159  Sheet & operator=(Sheet && in_that);
160 
161  virtual ~Sheet();
162 
163  Type ObjectType() const { return Type::ExchangeSheet; }
164 
168  bool Equals(Sheet const & in_kit) const;
169 
173  bool operator==(Sheet const & in_kit) const;
174 
178  bool operator!=(Sheet const & in_kit) const;
179 
180  /* Activates this sheet */
181  View Activate();
182  };
183 
186  class EXCHANGE_API CADModel : public CADModel
187  {
188  public:
190  CADModel();
191 
195  CADModel(Component const & in_that);
196 
200  CADModel(CADModel const & in_that);
201 
204  CADModel(Exchange::CADModel const & in_that);
205 
208  CADModel(Exchange::CADModel && in_that);
209 
210  virtual ~CADModel();
211 
212  Type ObjectType() const { return Type::ExchangeCADModel; }
213 
214 #ifndef _MSC_VER
215  CADModel & operator=(Exchange::CADModel const & in_that) = default;
216 #endif
217 
221  CADModel & operator=(Exchange::CADModel && in_that);
222 
223 
226  A3DEntity * GetExchangeEntity() const;
227 
228 
232  UTF8Array GetCurrentConfiguration() const;
233 
237  ConfigurationArray GetConfigurations() const;
238 
239  /* Gets a list of sheets for this CADModel (if any). Only formats which support the concept of sheets can return a non-empty array.
240  * \return The list of sheets for this CADModel */
241  SheetArray GetSheets() const;
242 
248  TranslationNotifier Translate(ExportParasolidOptionsKit const & in_options);
249  };
250 
253  class EXCHANGE_API Capture : public Capture
254  {
255  public:
257  Capture();
258 
262  Capture(Component const & in_that);
263 
267  Capture(Capture const & in_that);
268 
271  Capture(Exchange::Capture const & in_that);
272 
275  Capture(Exchange::Capture && in_that);
276 
277  virtual ~Capture();
278 
279  Type ObjectType() const { return Type::ExchangeCapture; }
280 
281 #ifndef _MSC_VER
282  Capture & operator=(Exchange::Capture const & in_that) = default;
283 #endif
284 
288  Capture & operator=(Exchange::Capture && in_that);
289 
290 
293  A3DEntity * GetExchangeEntity() const;
294  };
295 
298  class EXCHANGE_API Filter : public Filter
299  {
300  public:
302  Filter();
303 
307  Filter(Component const & in_that);
308 
312  Filter(Filter const & in_that);
313 
316  Filter(Exchange::Filter const & in_that);
317 
320  Filter(Exchange::Filter && in_that);
321 
322  virtual ~Filter();
323 
324  Type ObjectType() const { return Type::ExchangeFilter; }
325 
326 #ifndef _MSC_VER
327  Filter & operator=(Exchange::Filter const & in_that) = default;
328 #endif
329 
333  Filter & operator=(Exchange::Filter && in_that);
334 
335 
338  A3DEntity * GetExchangeEntity() const;
339  };
340 
342  class EXCHANGE_API Factory : public Sprocket
343  {
344  public:
348  static Component CreateComponent(Component const & in_owner, Component::ComponentType in_type, A3DEntity * in_entity = nullptr);
349 
352  static CADModel CreateCADModel(Model const & in_model = Factory::CreateModel(), A3DEntity * in_entity = nullptr);
353 
356  static Filter CreateFilter(Component const & in_owner, A3DEntity * in_entity = nullptr);
357 
360  static Capture CreateCapture(Component const & in_owner, A3DEntity * in_entity = nullptr, bool in_is_default = false);
361 
364  static Sheet CreateSheet(Component const & in_owner, A3DEntity * in_entity = nullptr);
365 
366  private:
368  Factory();
369  };
370 
372  class EXCHANGE_API ImportNotifier : public IONotifier
373  {
374  public:
376  ImportNotifier();
377 
380  ImportNotifier(ImportNotifier const & in_that);
381 
386  ImportNotifier(IONotifier const & in_that);
387 
391  ImportNotifier(ImportNotifier && in_that);
392 
396  ImportNotifier & operator=(ImportNotifier && in_that);
397 
398  virtual ~ImportNotifier();
399 
400  Type ObjectType() const { return Type::ExchangeImportNotifier; };
401 
405  ImportNotifier & operator=(ImportNotifier const & in_that);
406 
409  void Assign(ImportNotifier const & in_that);
410 
413  Exchange::CADModel GetCADModel() const;
414  };
415 
417  class EXCHANGE_API TranslationNotifier : public IONotifier
418  {
419  public:
422 
425  TranslationNotifier(TranslationNotifier const & in_that);
426 
431  TranslationNotifier(IONotifier const & in_that);
432 
437 
441  TranslationNotifier & operator=(TranslationNotifier && in_that);
442 
443  virtual ~TranslationNotifier();
444 
445  Type ObjectType() const { return Type::ExchangeTranslationNotifier; };
446 
450  TranslationNotifier & operator=(TranslationNotifier const & in_that);
451 
454  void Assign(TranslationNotifier const & in_that);
455 
458  Exchange::ParasolidEntityArray GetParasolidParts() const;
459 
462  Time GetModelLoadTime() const;
463 
466  Time GetTranslationTime() const;
467  };
468 
469 
470  class ImportOptionsKit;
471  class ExportACISOptionsKit;
472  class ExportIGESOptionsKit;
473  class ExportJTOptionsKit;
474  class ExportPRCOptionsKit;
475  class ExportSTEPOptionsKit;
476  class ExportSTLOptionsKit;
477  class ExportU3DOptionsKit;
478  class ExportXMLOptionsKit;
479 
480 
483  enum class BRepMode
484  {
487  TessellationOnly,
490  BRepOnly,
493  BRepAndTessellation,
494  };
495 
497  class EXCHANGE_API Tessellation
498  {
499  public:
502  enum class Type
503  {
504  Standard,
505  Custom
506  };
507 
508 
511  enum class Level
512  {
513  ExtraLow,
514  Low,
515  Medium,
516  High,
517  ExtraHigh,
518  };
519 
521  class EXCHANGE_API Chord
522  {
523  public:
526  enum class Limit
527  {
530  Ratio,
533  Height
534  };
535 
536  private:
538  Chord();
539  };
540 
543  enum class Accuracy
544  {
547  Standard,
550  Accurate
551  };
552 
553  private:
555  Tessellation();
556  };
557 
559  class EXCHANGE_API JT
560  {
561  public:
564  enum class Content
565  {
566  Geometry,
567  Tessellation,
568  GeometryAndTessellation
569  };
570 
573  enum class TessellationLevel
574  {
575  Low,
576  Medium,
577  High,
578  };
579 
580  private:
582  JT();
583  };
584 
586  class EXCHANGE_API STEP
587  {
588  public:
591  enum class Field
592  {
593  ProductName,
594  NextAssemblyUsageOccurrenceID,
595  NextAssemblyUsageOccurrenceName,
596  NextAssemblyUsageOccurrenceDescription
597  };
598 
601  enum class Format
602  {
603  AP203,
604  AP214
605  };
606 
607  private:
609  STEP();
610  };
611 
613  class EXCHANGE_API PRC
614  {
615  public:
618  enum class BRepCompression
619  {
620  None,
621  Low,
622  Medium,
623  High
624  };
625 
626  private:
628  PRC();
629  };
630 
632  class EXCHANGE_API ProE
633  {
634  public:
637  enum class SessionColor
638  {
640  LastCreoVersion,
642  ExchangeDefault,
645  UserDefined
646  };
647 
648  private:
650  ProE();
651  };
652 
654  class EXCHANGE_API U3D
655  {
656  public:
659  enum class Version
660  {
661  ECMA1,
662  ECMA3
663  };
664 
665  private:
667  U3D();
668  };
669 
671  class EXCHANGE_API Configuration : public Sprocket
672  {
673  public:
675  Configuration();
676 
679  Configuration(char const * in_name);
680 
685  Configuration(char const * in_name, size_t in_count, Configuration const in_subconfigurations[]);
686 
690  Configuration(char const * in_name, ConfigurationArray const & in_subconfigurations);
691 
694  Configuration(Configuration const & in_configuration);
695 
699  Configuration(Configuration && in_that);
700 
704  Configuration & operator=(Configuration && in_that);
705 
706  virtual ~Configuration();
707 
708  Type ObjectType() const { return Type::ExchangeConfiguration; }
709 
710 
713  void Set(Configuration const & in_kit);
714 
717  void Show(Configuration & out_kit) const;
718 
722  Configuration & operator=(Configuration const & in_kit);
723 
726  bool Empty() const;
727 
731  bool Equals(Configuration const & in_kit) const;
732 
736  bool operator==(Configuration const & in_kit) const;
737 
741  bool operator!=(Configuration const & in_kit) const;
742 
743 
746  UTF8 GetName() const;
747 
750  ConfigurationArray GetSubconfigurations() const;
751  };
752 
754  class EXCHANGE_API File
755  {
756  public:
759  enum class Format
760  {
761  Unsupported,
762  ACIS,
763  CADDS,
764  CATIAV4,
765  CATIAV5,
766  CGR,
767  COLLADA,
768  CreoProE,
769  IDEAS,
770  IFC,
771  IGES,
772  Inventor,
773  JT,
774  KeyholeMarkupLanguage,
775  LatticeXVL,
776  OneSpaceDesigner,
777  Parasolid,
778  PDF,
779  PRC,
780  Rhino,
781  NXUnigraphics,
782  SolidEdge,
783  SolidWorks,
784  STEP,
785  StereoLithography,
786  ThreeDStudioMax,
787  ThreeDXML,
788  Universal3D,
789  VDAFS,
790  VRML,
791  WavefrontObject,
792  };
793 
795  static Format GetFormat(char const * in_file_name);
796 
800  static ConfigurationArray GetConfigurations(char const * in_file_name);
801 
806  static ImportNotifier Import(char const * in_file_name, ImportOptionsKit const & in_options);
807 
814  static TranslationNotifier Translate(char const * in_file_name, ImportOptionsKit const & in_options, ExportParasolidOptionsKit const & in_parasolid_options);
815 
820  static void ExportACIS(CADModel const & in_cad_model, char const * in_file_name, ExportACISOptionsKit const & in_options);
821 
826  static void ExportIGES(CADModel const & in_cad_model, char const * in_file_name, ExportIGESOptionsKit const & in_options);
827 
832  static void ExportJT(CADModel const & in_cad_model, char const * in_file_name, ExportJTOptionsKit const & in_options);
833 
838  static void ExportParasolid(CADModel const & in_cad_model, char const * in_file_name, ExportParasolidOptionsKit const & in_options);
839 
844  static void ExportPRC(CADModel const & in_cad_model, char const * in_file_name, ExportPRCOptionsKit const & in_options);
845 
850  static void ExportSTEP(CADModel const & in_cad_model, char const * in_file_name, ExportSTEPOptionsKit const & in_options);
851 
856  static void ExportSTL(CADModel const & in_cad_model, char const * in_file_name, ExportSTLOptionsKit const & in_options);
857 
862  static void ExportU3D(CADModel const & in_cad_model, char const * in_file_name, ExportU3DOptionsKit const & in_options);
863 
867  static void ExportVRML(CADModel const & in_cad_model, char const * in_file_name);
868 
873  static void ExportXML(CADModel const & in_cad_model, char const * in_file_name, ExportXMLOptionsKit const & in_options);
874 
875  private:
877  File();
878  };
879 
881  class EXCHANGE_API ImportOptionsKit : public Sprocket
882  {
883  public:
886 
889  ImportOptionsKit(ImportOptionsKit const & in_kit);
890 
895 
899  ImportOptionsKit & operator=(ImportOptionsKit && in_that);
900 
901  virtual ~ImportOptionsKit();
902 
903  Type ObjectType() const { return Type::ExchangeImportOptionsKit; }
904 
908  static ImportOptionsKit GetDefault();
909 
912  void Set(ImportOptionsKit const & in_kit);
913 
916  void Show(ImportOptionsKit & out_kit) const;
917 
921  ImportOptionsKit & operator=(ImportOptionsKit const & in_kit);
922 
925  bool Empty() const;
926 
930  bool Equals(ImportOptionsKit const & in_kit) const;
931 
935  bool operator==(ImportOptionsKit const & in_kit) const;
936 
940  bool operator!=(ImportOptionsKit const & in_kit) const;
941 
942 
948  ImportOptionsKit & SetBRepData(bool in_state);
949 
955  ImportOptionsKit & SetBRepMode(BRepMode in_mode);
956 
962  ImportOptionsKit & SetSolids(bool in_state);
963 
969  ImportOptionsKit & SetSurfaces(bool in_state);
970 
976  ImportOptionsKit & SetWireframes(bool in_state);
977 
983  ImportOptionsKit & SetPMI(bool in_state);
984 
991  ImportOptionsKit & SetAttributes(bool in_state);
992 
998  ImportOptionsKit & SetHiddenObjects(bool in_state);
999 
1005  ImportOptionsKit & SetConstructionAndReferences(bool in_state);
1006 
1012  ImportOptionsKit & SetActiveFilter(bool in_state);
1013 
1019  ImportOptionsKit & SetDefaultUnits(Units in_units);
1020 
1027  ImportOptionsKit & SetPMISubstitutionFont(char const * in_font_name, bool in_always_substitute = false);
1028 
1034  ImportOptionsKit & SetPMIPrecision(size_t in_precision);
1035 
1041  ImportOptionsKit & SetPMIDefaultUnits(Units in_units);
1042 
1048  ImportOptionsKit & SetPMIDefaultColor(RGBColor const & in_color);
1049 
1055  ImportOptionsKit & SetTessellationLevel(Tessellation::Level in_level);
1056 
1063  ImportOptionsKit & SetTessellationLevel(Tessellation::Chord::Limit in_limit_type, double in_limit, double in_angle_tolerance);
1064 
1072  ImportOptionsKit & SetTessellationAccuracy(Tessellation::Accuracy in_type, bool in_accurate_normals = true);
1073 
1079  ImportOptionsKit & SetTessellationPreservesUVPoints(bool in_state);
1080 
1086  ImportOptionsKit & SetTessellationMaximumEdgeLength(double in_length);
1087 
1093  ImportOptionsKit & SetTextureDirectories(size_t in_count, UTF8 const in_directories[]);
1094 
1099  ImportOptionsKit & SetTextureDirectories(UTF8Array const & in_directories);
1100 
1107  ImportOptionsKit & SetSearchDirectories(size_t in_count, UTF8 const in_directories[], bool const in_recurse_flags[]);
1108 
1114  ImportOptionsKit & SetSearchDirectories(UTF8Array const & in_directories, BoolArray const & in_recurse_flags);
1115 
1124  ImportOptionsKit & SetSearchDirectories(size_t in_count, UTF8 const in_directories[], UTF8 const in_logical_names[], bool const in_recurse_flags[]);
1125 
1134  ImportOptionsKit & SetSearchDirectories(UTF8Array const & in_directories, UTF8Array const & in_logical_names, BoolArray const & in_recurse_flags);
1135 
1141  ImportOptionsKit & SetSearchDirectoriesByFile(size_t in_count, UTF8 const in_file_names[]);
1142 
1147  ImportOptionsKit & SetSearchDirectoriesByFile(UTF8Array const & in_file_names);
1148 
1153  ImportOptionsKit & SetConfiguration(char const * in_configuration);
1154 
1160  ImportOptionsKit & SetConfiguration(size_t in_count, UTF8 const in_configuration[]);
1161 
1166  ImportOptionsKit & SetConfiguration(UTF8Array const & in_configuration);
1167 
1173  ImportOptionsKit & SetCatiaV4LogicalNameForRootDirectory(char const * in_name);
1174 
1181  ImportOptionsKit & SetCatiaV4LogicalNameSearching(bool in_state);
1182 
1189  ImportOptionsKit & SetCatiaV5Cache(bool in_active, char const * in_path);
1190 
1198  ImportOptionsKit & SetUnigraphicsPreferredReferenceSets(size_t in_count, UTF8 const in_reference_sets[], bool in_apply_to_all_levels);
1199 
1206  ImportOptionsKit & SetUnigraphicsPreferredReferenceSets(UTF8Array const & in_reference_sets, bool in_apply_to_all_levels);
1207 
1213  ImportOptionsKit & SetUnigraphicsFittedCamera(bool in_state);
1214 
1220  ImportOptionsKit & SetProECodePageName(char const * in_name);
1221 
1227  ImportOptionsKit & SetProEDimensionTolerance(bool in_state);
1228 
1234  ImportOptionsKit & SetProESubpartPMI(bool in_state);
1235 
1241  ImportOptionsKit & SetProESessionColor(ProE::SessionColor in_type);
1242 
1249  ImportOptionsKit & SetSTEPNamePreference(STEP::Field in_field);
1250 
1256  ImportOptionsKit & SetSTEPCodePageName(char const * in_name);
1257 
1263  ImportOptionsKit & SetSTEPFirstColorPreference(bool in_state);
1264 
1270  ImportOptionsKit & SetSTEPShellBasedSurfaceModelSplitting(bool in_state);
1271 
1277  ImportOptionsKit & SetSTEPOrientationHealing(bool in_state);
1278 
1284  ImportOptionsKit & SetIFCCodePageName(char const * in_name);
1285 
1292  ImportOptionsKit & SetIFCAttributeXMLFile(char const * in_filename);
1293 
1299  ImportOptionsKit & SetIFCOwnerHistoryOptimization(bool in_state);
1300 
1306  ImportOptionsKit & SetIFCFaceOptimization(bool in_state);
1307 
1314  ImportOptionsKit & SetIFCEdges(bool in_state);
1315 
1321  ImportOptionsKit & SetIFCMetadata(bool in_state);
1322 
1328  ImportOptionsKit & SetPDF3DStreamIndex(size_t in_index);
1329 
1335  ImportOptionsKit & SetJTTessellationLevel(JT::TessellationLevel in_jt_tessellation_level);
1336 
1337 
1341  ImportOptionsKit & UnsetBRepData();
1342 
1345  ImportOptionsKit & UnsetBRepMode();
1346 
1349  ImportOptionsKit & UnsetSolids();
1350 
1353  ImportOptionsKit & UnsetSurfaces();
1354 
1357  ImportOptionsKit & UnsetWireframes();
1358 
1361  ImportOptionsKit & UnsetPMI();
1362 
1365  ImportOptionsKit & UnsetAttributes();
1366 
1369  ImportOptionsKit & UnsetHiddenObjects();
1370 
1373  ImportOptionsKit & UnsetConstructionAndReferences();
1374 
1377  ImportOptionsKit & UnsetActiveFilter();
1378 
1381  ImportOptionsKit & UnsetDefaultUnits();
1382 
1385  ImportOptionsKit & UnsetPMISubstitutionFont();
1386 
1389  ImportOptionsKit & UnsetPMIPrecision();
1390 
1393  ImportOptionsKit & UnsetPMIDefaultUnits();
1394 
1397  ImportOptionsKit & UnsetPMIDefaultColor();
1398 
1401  ImportOptionsKit & UnsetTessellationLevel();
1402 
1405  ImportOptionsKit & UnsetTessellationAccuracy();
1406 
1409  ImportOptionsKit & UnsetTessellationPreservesUVPoints();
1410 
1413  ImportOptionsKit & UnsetTessellationMaximumEdgeLength();
1414 
1417  ImportOptionsKit & UnsetTextureDirectories();
1418 
1421  ImportOptionsKit & UnsetSearchDirectories();
1422 
1425  ImportOptionsKit & UnsetSearchDirectoriesByFile();
1426 
1429  ImportOptionsKit & UnsetConfiguration();
1430 
1433  ImportOptionsKit & UnsetCatiaV4LogicalNameForRootDirectory();
1434 
1437  ImportOptionsKit & UnsetCatiaV4LogicalNameSearching();
1438 
1441  ImportOptionsKit & UnsetCatiaV5Cache();
1442 
1445  ImportOptionsKit & UnsetUnigraphicsPreferredReferenceSets();
1446 
1449  ImportOptionsKit & UnsetUnigraphicsFittedCamera();
1450 
1453  ImportOptionsKit & UnsetProECodePageName();
1454 
1457  ImportOptionsKit & UnsetProEDimensionTolerance();
1458 
1461  ImportOptionsKit & UnsetProESubpartPMI();
1462 
1465  ImportOptionsKit & UnsetProESessionColor();
1466 
1469  ImportOptionsKit & UnsetSTEPNamePreference();
1470 
1473  ImportOptionsKit & UnsetSTEPFirstColorPreference();
1474 
1477  ImportOptionsKit & UnsetSTEPCodePageName();
1478 
1481  ImportOptionsKit & UnsetSTEPShellBasedSurfaceModelSplitting();
1482 
1485  ImportOptionsKit & UnsetSTEPOrientationHealing();
1486 
1489  ImportOptionsKit & UnsetIFCCodePageName();
1490 
1493  ImportOptionsKit & UnsetIFCAttributeXMLFile();
1494 
1497  ImportOptionsKit & UnsetIFCOwnerHistoryOptimization();
1498 
1501  ImportOptionsKit & UnsetIFCFaceOptimization();
1502 
1505  ImportOptionsKit & UnsetIFCEdges();
1506 
1509  ImportOptionsKit & UnsetIFCMetadata();
1510 
1513  ImportOptionsKit & UnsetPDF3DStreamIndex();
1514 
1517  ImportOptionsKit & UnsetJTTessellationLevel();
1518 
1521  ImportOptionsKit & UnsetEverything();
1522 
1523 
1528  bool ShowBRepData(bool & out_state) const;
1529 
1533  bool ShowBRepMode(BRepMode & out_mode) const;
1534 
1538  bool ShowSolids(bool & out_state) const;
1539 
1543  bool ShowSurfaces(bool & out_state) const;
1544 
1548  bool ShowWireframes(bool & out_state) const;
1549 
1553  bool ShowPMI(bool & out_state) const;
1554 
1558  bool ShowAttributes(bool & out_state) const;
1559 
1563  bool ShowHiddenObjects(bool & out_state) const;
1564 
1568  bool ShowConstructionAndReferences(bool & out_state) const;
1569 
1573  bool ShowActiveFilter(bool & out_state) const;
1574 
1578  bool ShowDefaultUnits(Units & out_units) const;
1579 
1584  bool ShowPMISubstitutionFont(UTF8 & out_font_name, bool & out_always_substitute) const;
1585 
1589  bool ShowPMIPrecision(size_t & out_precision) const;
1590 
1594  bool ShowPMIDefaultUnits(Units & out_units) const;
1595 
1599  bool ShowPMIDefaultColor(RGBColor & out_color) const;
1600 
1608  bool ShowTessellationLevel(Tessellation::Type & out_type, Tessellation::Level & out_level, Tessellation::Chord::Limit & out_limit_type, double & out_limit, double & out_angle_tolerance) const;
1609 
1614  bool ShowTessellationAccuracy(Tessellation::Accuracy & out_type, bool & out_accurate_normals) const;
1615 
1619  bool ShowTessellationPreservesUVPoints(bool & out_state) const;
1620 
1624  bool ShowTessellationMaximumEdgeLength(double & out_length) const;
1625 
1629  bool ShowTextureDirectories(UTF8Array & out_directories);
1630 
1636  bool ShowSearchDirectories(UTF8Array & out_directories, UTF8Array & out_logical_names, BoolArray & out_recurse_flags) const;
1637 
1641  bool ShowSearchDirectoriesByFile(UTF8Array & out_file_names) const;
1642 
1646  bool ShowConfiguration(UTF8Array & out_configuration) const;
1647 
1651  bool ShowCatiaV4LogicalNameForRootDirectory(UTF8 & out_name) const;
1652 
1656  bool ShowCatiaV4LogicalNameSearching(bool & out_state) const;
1657 
1662  bool ShowCatiaV5Cache(bool & out_active, UTF8 & out_path) const;
1663 
1668  bool ShowUnigraphicsPreferredReferenceSets(UTF8Array & out_reference_sets, bool & out_apply_to_all_levels) const;
1669 
1673  bool ShowUnigraphicsFittedCamera(bool & out_state) const;
1674 
1678  bool ShowProECodePageName(UTF8 & out_name) const;
1679 
1683  bool ShowProEDimensionTolerance(bool & out_state) const;
1684 
1688  bool ShowProESubpartPMI(bool & out_state) const;
1689 
1693  bool ShowProESessionColor(ProE::SessionColor & out_type) const;
1694 
1698  bool ShowSTEPNamePreference(STEP::Field & out_field) const;
1699 
1703  bool ShowSTEPFirstColorPreference(bool & out_state) const;
1704 
1708  bool ShowSTEPCodePageName(UTF8 & out_name) const;
1709 
1713  bool ShowSTEPShellBasedSurfaceModelSplitting(bool & out_state) const;
1714 
1718  bool ShowSTEPOrientationHealing(bool & out_state) const;
1719 
1723  bool ShowIFCCodePageName(UTF8 & out_name) const;
1724 
1728  bool ShowIFCAttributeXMLFile(UTF8 & out_filename) const;
1729 
1733  bool ShowIFCOwnerHistoryOptimization(bool & out_state) const;
1734 
1738  bool ShowIFCFaceOptimization(bool & out_state) const;
1739 
1743  bool ShowIFCEdges(bool & out_state) const;
1744 
1748  bool ShowIFCMetadata(bool & out_state) const;
1749 
1753  bool ShowPDF3DStreamIndex(size_t & out_index) const;
1754 
1758  bool ShowJTTessellationLevel(JT::TessellationLevel & out_tessellation_level) const;
1759  };
1760 
1761 
1763  class EXCHANGE_API ExportACISOptionsKit : public Sprocket
1764  {
1765  public:
1768 
1772 
1776 
1777  virtual ~ExportACISOptionsKit();
1778 
1779  Type ObjectType() const { return Type::ExchangeExportACISOptionsKit; }
1780 
1784  static ExportACISOptionsKit GetDefault();
1785 
1788  void Set(ExportACISOptionsKit const & in_kit);
1789 
1792  void Show(ExportACISOptionsKit & out_kit) const;
1793 
1797  ExportACISOptionsKit & operator=(ExportACISOptionsKit const & in_kit);
1798 
1802  ExportACISOptionsKit & operator=(ExportACISOptionsKit && in_that);
1803 
1806  bool Empty() const;
1807 
1811  bool Equals(ExportACISOptionsKit const & in_kit) const;
1812 
1816  bool operator==(ExportACISOptionsKit const & in_kit) const;
1817 
1821  bool operator!=(ExportACISOptionsKit const & in_kit) const;
1822 
1823 
1829  ExportACISOptionsKit & SetMillimeterUnits(bool in_state);
1830 
1836  ExportACISOptionsKit & SetBinary(bool in_state);
1837 
1838 
1841  ExportACISOptionsKit & UnsetMillimeterUnits();
1842 
1845  ExportACISOptionsKit & UnsetBinary();
1846 
1849  ExportACISOptionsKit & UnsetEverything();
1850 
1851 
1855  bool ShowMillimeterUnits(bool & out_state) const;
1856 
1860  bool ShowBinary(bool & out_state) const;
1861  };
1862 
1864  class EXCHANGE_API ExportIGESOptionsKit : public Sprocket
1865  {
1866  public:
1869 
1873 
1877 
1878  virtual ~ExportIGESOptionsKit();
1879 
1880  Type ObjectType() const { return Type::ExchangeExportIGESOptionsKit; }
1881 
1885  static ExportIGESOptionsKit GetDefault();
1886 
1889  void Set(ExportIGESOptionsKit const & in_kit);
1890 
1893  void Show(ExportIGESOptionsKit & out_kit) const;
1894 
1898  ExportIGESOptionsKit & operator=(ExportIGESOptionsKit const & in_kit);
1899 
1903  ExportIGESOptionsKit & operator=(ExportIGESOptionsKit && in_that);
1904 
1907  bool Empty() const;
1908 
1912  bool Equals(ExportIGESOptionsKit const & in_kit) const;
1913 
1917  bool operator==(ExportIGESOptionsKit const & in_kit) const;
1918 
1922  bool operator!=(ExportIGESOptionsKit const & in_kit) const;
1923 
1924 
1930  ExportIGESOptionsKit & SetAnalyticsAsNURBS(bool in_state);
1931 
1937  ExportIGESOptionsKit & SetFacetedAsWireframe(bool in_state);
1938 
1944  ExportIGESOptionsKit & SetSolidsAsFaces(bool in_state);
1945 
1951  ExportIGESOptionsKit & SetHiddenObjects(bool in_state);
1952 
1958  ExportIGESOptionsKit & SetTessellation(bool in_state);
1959 
1963  ExportIGESOptionsKit & SetApplication(char const * in_name);
1964 
1968  ExportIGESOptionsKit & SetVersion(char const * in_version);
1969 
1970 
1973  ExportIGESOptionsKit & UnsetAnalyticsAsNURBS();
1974 
1977  ExportIGESOptionsKit & UnsetFacetedAsWireframe();
1978 
1981  ExportIGESOptionsKit & UnsetSolidsAsFaces();
1982 
1985  ExportIGESOptionsKit & UnsetHiddenObjects();
1986 
1989  ExportIGESOptionsKit & UnsetTessellation();
1990 
1993  ExportIGESOptionsKit & UnsetApplication();
1994 
1997  ExportIGESOptionsKit & UnsetVersion();
1998 
2001  ExportIGESOptionsKit & UnsetEverything();
2002 
2003 
2007  bool ShowAnalyticsAsNURBS(bool & out_state) const;
2008 
2012  bool ShowFacetedAsWireframe(bool & out_state) const;
2013 
2017  bool ShowSolidsAsFaces(bool & out_state) const;
2018 
2022  bool ShowHiddenObjects(bool & out_state) const;
2023 
2027  bool ShowTessellation(bool & out_state) const;
2028 
2032  bool ShowApplication(UTF8 & out_name) const;
2033 
2037  bool ShowVersion(UTF8 & out_version) const;
2038  };
2039 
2041  class EXCHANGE_API ExportJTOptionsKit : public Sprocket
2042  {
2043  public:
2046 
2049  ExportJTOptionsKit(ExportJTOptionsKit const & in_kit);
2050 
2054 
2055  virtual ~ExportJTOptionsKit();
2056 
2057  Type ObjectType() const { return Type::ExchangeExportJTOptionsKit; }
2058 
2062  static ExportJTOptionsKit GetDefault();
2063 
2066  void Set(ExportJTOptionsKit const & in_kit);
2067 
2070  void Show(ExportJTOptionsKit & out_kit) const;
2071 
2075  ExportJTOptionsKit & operator=(ExportJTOptionsKit const & in_kit);
2076 
2080  ExportJTOptionsKit & operator=(ExportJTOptionsKit && in_that);
2081 
2084  bool Empty() const;
2085 
2089  bool Equals(ExportJTOptionsKit const & in_kit) const;
2090 
2094  bool operator==(ExportJTOptionsKit const & in_kit) const;
2095 
2099  bool operator!=(ExportJTOptionsKit const & in_kit) const;
2100 
2101 
2107  ExportJTOptionsKit & SetContent(JT::Content in_content);
2108 
2114  ExportJTOptionsKit & SetHiddenObjects(bool in_state);
2115 
2121  ExportJTOptionsKit & SetPMI(bool in_state);
2122 
2123 
2126  ExportJTOptionsKit & UnsetContent();
2127 
2130  ExportJTOptionsKit & UnsetHiddenObjects();
2131 
2134  ExportJTOptionsKit & UnsetPMI();
2135 
2138  ExportJTOptionsKit & UnsetEverything();
2139 
2140 
2144  bool ShowContent(JT::Content & out_content) const;
2145 
2149  bool ShowHiddenObjects(bool & out_state) const;
2150 
2154  bool ShowPMI(bool & out_state) const;
2155  };
2156 
2158  class EXCHANGE_API ExportParasolidOptionsKit : public Sprocket
2159  {
2160  public:
2163 
2167 
2171 
2172  virtual ~ExportParasolidOptionsKit();
2173 
2174  Type ObjectType() const { return Type::ExchangeExportParasolidOptionsKit; }
2175 
2179  static ExportParasolidOptionsKit GetDefault();
2180 
2183  void Set(ExportParasolidOptionsKit const & in_kit);
2184 
2187  void Show(ExportParasolidOptionsKit & out_kit) const;
2188 
2192  ExportParasolidOptionsKit & operator=(ExportParasolidOptionsKit const & in_kit);
2193 
2197  ExportParasolidOptionsKit & operator=(ExportParasolidOptionsKit && in_that);
2198 
2201  bool Empty() const;
2202 
2206  bool Equals(ExportParasolidOptionsKit const & in_kit) const;
2207 
2211  bool operator==(ExportParasolidOptionsKit const & in_kit) const;
2212 
2216  bool operator!=(ExportParasolidOptionsKit const & in_kit) const;
2217 
2218 
2224  ExportParasolidOptionsKit & SetSolidsAsFaces(bool in_state);
2225 
2231  ExportParasolidOptionsKit & SetTessellation(bool in_state);
2232 
2238  ExportParasolidOptionsKit & SetHiddenObjects(bool in_state);
2239 
2243  ExportParasolidOptionsKit & SetApplication(char const * in_name);
2244 
2248  ExportParasolidOptionsKit & SetVersion(char const * in_version);
2249 
2250 
2253  ExportParasolidOptionsKit & UnsetSolidsAsFaces();
2254 
2257  ExportParasolidOptionsKit & UnsetTessellation();
2258 
2261  ExportParasolidOptionsKit & UnsetHiddenObjects();
2262 
2265  ExportParasolidOptionsKit & UnsetApplication();
2266 
2269  ExportParasolidOptionsKit & UnsetVersion();
2270 
2273  ExportParasolidOptionsKit & UnsetEverything();
2274 
2275 
2279  bool ShowSolidsAsFaces(bool & out_state) const;
2280 
2284  bool ShowTessellation(bool & out_state) const;
2285 
2289  bool ShowHiddenObjects(bool & out_state) const;
2290 
2294  bool ShowApplication(UTF8 & out_name) const;
2295 
2299  bool ShowVersion(UTF8 & out_version) const;
2300  };
2301 
2303  class EXCHANGE_API ExportPRCOptionsKit : public Sprocket
2304  {
2305  public:
2308 
2311  ExportPRCOptionsKit(ExportPRCOptionsKit const & in_kit);
2312 
2316 
2317  virtual ~ExportPRCOptionsKit();
2318 
2319  Type ObjectType() const { return Type::ExchangeExportPRCOptionsKit; }
2320 
2324  static ExportPRCOptionsKit GetDefault();
2325 
2328  void Set(ExportPRCOptionsKit const & in_kit);
2329 
2332  void Show(ExportPRCOptionsKit & out_kit) const;
2333 
2337  ExportPRCOptionsKit & operator=(ExportPRCOptionsKit const & in_kit);
2338 
2342  ExportPRCOptionsKit & operator=(ExportPRCOptionsKit && in_that);
2343 
2346  bool Empty() const;
2347 
2351  bool Equals(ExportPRCOptionsKit const & in_kit) const;
2352 
2356  bool operator==(ExportPRCOptionsKit const & in_kit) const;
2357 
2361  bool operator!=(ExportPRCOptionsKit const & in_kit) const;
2362 
2363 
2369  ExportPRCOptionsKit & SetTessellationCompression(bool in_state);
2370 
2377  ExportPRCOptionsKit & SetBRepCompression(PRC::BRepCompression in_level);
2378 
2384  ExportPRCOptionsKit & SetBRepRemoval(bool in_state);
2385 
2391  ExportPRCOptionsKit & SetAttributeRemoval(bool in_state);
2392 
2393 
2396  ExportPRCOptionsKit & UnsetTessellationCompression();
2397 
2400  ExportPRCOptionsKit & UnsetBRepCompression();
2401 
2404  ExportPRCOptionsKit & UnsetBRepRemoval();
2405 
2408  ExportPRCOptionsKit & UnsetAttributeRemoval();
2409 
2412  ExportPRCOptionsKit & UnsetEverything();
2413 
2414 
2418  bool ShowTessellationCompression(bool & out_state) const;
2419 
2423  bool ShowBRepCompression(PRC::BRepCompression & out_level) const;
2424 
2428  bool ShowBRepRemoval(bool & out_state) const;
2429 
2433  bool ShowAttributeRemoval(bool & out_state) const;
2434  };
2435 
2437  class EXCHANGE_API ExportSTEPOptionsKit : public Sprocket
2438  {
2439  public:
2442 
2446 
2450 
2451  virtual ~ExportSTEPOptionsKit();
2452 
2453  Type ObjectType() const { return Type::ExchangeExportSTEPOptionsKit; }
2454 
2458  static ExportSTEPOptionsKit GetDefault();
2459 
2462  void Set(ExportSTEPOptionsKit const & in_kit);
2463 
2466  void Show(ExportSTEPOptionsKit & out_kit) const;
2467 
2471  ExportSTEPOptionsKit & operator=(ExportSTEPOptionsKit const & in_kit);
2472 
2476  ExportSTEPOptionsKit & operator=(ExportSTEPOptionsKit && in_that);
2477 
2480  bool Empty() const;
2481 
2485  bool Equals(ExportSTEPOptionsKit const & in_kit) const;
2486 
2490  bool operator==(ExportSTEPOptionsKit const & in_kit) const;
2491 
2495  bool operator!=(ExportSTEPOptionsKit const & in_kit) const;
2496 
2497 
2503  ExportSTEPOptionsKit & SetFormat(STEP::Format in_format);
2504 
2510  ExportSTEPOptionsKit & SetAnalyticsAsNURBS(bool in_state);
2511 
2517  ExportSTEPOptionsKit & SetFacetedAsWireframe(bool in_state);
2518 
2524  ExportSTEPOptionsKit & SetNameShortening(bool in_state);
2525 
2529  ExportSTEPOptionsKit & SetApplication(char const * in_name);
2530 
2534  ExportSTEPOptionsKit & SetVersion(char const * in_version);
2535 
2536 
2539  ExportSTEPOptionsKit & UnsetFormat();
2540 
2543  ExportSTEPOptionsKit & UnsetAnalyticsAsNURBS();
2544 
2547  ExportSTEPOptionsKit & UnsetFacetedAsWireframe();
2548 
2551  ExportSTEPOptionsKit & UnsetNameShortening();
2552 
2555  ExportSTEPOptionsKit & UnsetApplication();
2556 
2559  ExportSTEPOptionsKit & UnsetVersion();
2560 
2563  ExportSTEPOptionsKit & UnsetEverything();
2564 
2565 
2569  bool ShowFormat(STEP::Format & out_format) const;
2570 
2574  bool ShowAnalyticsAsNURBS(bool & out_state) const;
2575 
2579  bool ShowFacetedAsWireframe(bool & out_state) const;
2580 
2584  bool ShowNameShortening(bool & out_state) const;
2585 
2589  bool ShowApplication(UTF8 & out_name) const;
2590 
2594  bool ShowVersion(UTF8 & out_version) const;
2595  };
2596 
2598  class EXCHANGE_API ExportSTLOptionsKit : public Sprocket
2599  {
2600  public:
2603 
2606  ExportSTLOptionsKit(ExportSTLOptionsKit const & in_kit);
2607 
2611 
2612  virtual ~ExportSTLOptionsKit();
2613 
2614  Type ObjectType() const { return Type::ExchangeExportSTLOptionsKit; }
2615 
2619  static ExportSTLOptionsKit GetDefault();
2620 
2623  void Set(ExportSTLOptionsKit const & in_kit);
2624 
2627  void Show(ExportSTLOptionsKit & out_kit) const;
2628 
2632  ExportSTLOptionsKit & operator=(ExportSTLOptionsKit const & in_kit);
2633 
2637  ExportSTLOptionsKit & operator=(ExportSTLOptionsKit && in_that);
2638 
2641  bool Empty() const;
2642 
2646  bool Equals(ExportSTLOptionsKit const & in_kit) const;
2647 
2651  bool operator==(ExportSTLOptionsKit const & in_kit) const;
2652 
2656  bool operator!=(ExportSTLOptionsKit const & in_kit) const;
2657 
2658 
2664  ExportSTLOptionsKit & SetBinary(bool in_state);
2665 
2671  ExportSTLOptionsKit & SetTessellationLevel(Tessellation::Level in_level);
2672 
2679  ExportSTLOptionsKit & SetTessellationLevel(Tessellation::Chord::Limit in_limit_type, double in_limit, double in_angle_tolerance);
2680 
2686  ExportSTLOptionsKit & SetTessellationAccuracy(Tessellation::Accuracy in_type);
2687 
2693  ExportSTLOptionsKit & SetCurrentTessellationRetention(bool in_state);
2694 
2701  ExportSTLOptionsKit & SetMaximumEdgeLength(double in_length);
2702 
2703 
2706  ExportSTLOptionsKit & UnsetBinary();
2707 
2710  ExportSTLOptionsKit & UnsetTessellationLevel();
2711 
2714  ExportSTLOptionsKit & UnsetTessellationAccuracy();
2715 
2718  ExportSTLOptionsKit & UnsetCurrentTessellationRetention();
2719 
2722  ExportSTLOptionsKit & UnsetMaximumEdgeLength();
2723 
2726  ExportSTLOptionsKit & UnsetEverything();
2727 
2728 
2732  bool ShowBinary(bool & out_state) const;
2733 
2741  bool ShowTessellationLevel(Tessellation::Type & out_type, Tessellation::Level & out_level, Tessellation::Chord::Limit & out_limit_type, double & out_limit, double & out_angle_tolerance) const;
2742 
2746  bool ShowTessellationAccuracy(Tessellation::Accuracy & out_type) const;
2747 
2751  bool ShowCurrentTessellationRetention(bool & out_state) const;
2752 
2756  bool ShowMaximumEdgeLength(double & out_length) const;
2757  };
2758 
2760  class EXCHANGE_API ExportU3DOptionsKit : public Sprocket
2761  {
2762  public:
2765 
2768  ExportU3DOptionsKit(ExportU3DOptionsKit const & in_kit);
2769 
2773 
2774  virtual ~ExportU3DOptionsKit();
2775 
2776  Type ObjectType() const { return Type::ExchangeExportU3DOptionsKit; }
2777 
2781  static ExportU3DOptionsKit GetDefault();
2782 
2785  void Set(ExportU3DOptionsKit const & in_kit);
2786 
2789  void Show(ExportU3DOptionsKit & out_kit) const;
2790 
2794  ExportU3DOptionsKit & operator=(ExportU3DOptionsKit const & in_kit);
2795 
2799  ExportU3DOptionsKit & operator=(ExportU3DOptionsKit && in_that);
2800 
2803  bool Empty() const;
2804 
2808  bool Equals(ExportU3DOptionsKit const & in_kit) const;
2809 
2813  bool operator==(ExportU3DOptionsKit const & in_kit) const;
2814 
2818  bool operator!=(ExportU3DOptionsKit const & in_kit) const;
2819 
2820 
2826  ExportU3DOptionsKit & SetVersion(U3D::Version in_version);
2827 
2832  ExportU3DOptionsKit & SetCompression(unsigned char in_level);
2833 
2834 
2837  ExportU3DOptionsKit & UnsetVersion();
2838 
2841  ExportU3DOptionsKit & UnsetCompression();
2842 
2845  ExportU3DOptionsKit & UnsetEverything();
2846 
2847 
2851  bool ShowVersion(U3D::Version & out_version) const;
2852 
2856  bool ShowCompression(unsigned char & out_level) const;
2857  };
2858 
2860  class EXCHANGE_API ExportXMLOptionsKit : public Sprocket
2861  {
2862  public:
2865 
2868  ExportXMLOptionsKit(ExportXMLOptionsKit const & in_kit);
2869 
2873 
2874  virtual ~ExportXMLOptionsKit();
2875 
2876  Type ObjectType() const { return Type::ExchangeExportXMLOptionsKit; }
2877 
2881  static ExportXMLOptionsKit GetDefault();
2882 
2885  void Set(ExportXMLOptionsKit const & in_kit);
2886 
2889  void Show(ExportXMLOptionsKit & out_kit) const;
2890 
2894  ExportXMLOptionsKit & operator=(ExportXMLOptionsKit const & in_kit);
2895 
2899  ExportXMLOptionsKit & operator=(ExportXMLOptionsKit && in_that);
2900 
2903  bool Empty() const;
2904 
2908  bool Equals(ExportXMLOptionsKit const & in_kit) const;
2909 
2913  bool operator==(ExportXMLOptionsKit const & in_kit) const;
2914 
2918  bool operator!=(ExportXMLOptionsKit const & in_kit) const;
2919 
2920 
2926  ExportXMLOptionsKit & SetMetadata(bool in_state);
2927 
2933  ExportXMLOptionsKit & SetTransformations(bool in_state);
2934 
2940  ExportXMLOptionsKit & SetMaterials(bool in_state);
2941 
2942 
2945  ExportXMLOptionsKit & UnsetMetadata();
2946 
2949  ExportXMLOptionsKit & UnsetTransformations();
2950 
2953  ExportXMLOptionsKit & UnsetMaterials();
2954 
2957  ExportXMLOptionsKit & UnsetEverything();
2958 
2959 
2963  bool ShowMetadata(bool & out_state) const;
2964 
2968  bool ShowTransformations(bool & out_state) const;
2969 
2973  bool ShowMaterials(bool & out_state) const;
2974  };
2975 
2977  class EXCHANGE_API TessellationOptionsKit : public Sprocket
2978  {
2979  public:
2982 
2986 
2990 
2991  virtual ~TessellationOptionsKit();
2992 
2993  Type ObjectType() const { return Type::ExchangeTessellationOptionsKit; }
2994 
2998  static TessellationOptionsKit GetDefault();
2999 
3002  void Set(TessellationOptionsKit const & in_kit);
3003 
3006  void Show(TessellationOptionsKit & out_kit) const;
3007 
3011  TessellationOptionsKit & operator=(TessellationOptionsKit const & in_kit);
3012 
3016  TessellationOptionsKit & operator=(TessellationOptionsKit && in_that);
3017 
3020  bool Empty() const;
3021 
3025  bool Equals(TessellationOptionsKit const & in_kit) const;
3026 
3030  bool operator==(TessellationOptionsKit const & in_kit) const;
3031 
3035  bool operator!=(TessellationOptionsKit const & in_kit) const;
3036 
3037 
3041  TessellationOptionsKit & SetLevel(Tessellation::Level in_level);
3042 
3049  TessellationOptionsKit & SetLevel(Tessellation::Chord::Limit in_limit_type, double in_limit, double in_angle_tolerance);
3050 
3056  TessellationOptionsKit & SetAccuracy(Tessellation::Accuracy in_type, bool in_accurate_normals = true);
3057 
3061  TessellationOptionsKit & SetUVPointPreservation(bool in_state);
3062 
3066  TessellationOptionsKit & SetMaximumEdgeLength(double in_length);
3067 
3068 
3071  TessellationOptionsKit & UnsetLevel();
3072 
3075  TessellationOptionsKit & UnsetAccuracy();
3076 
3079  TessellationOptionsKit & UnsetUVPointPreservation();
3080 
3083  TessellationOptionsKit & UnsetMaximumEdgeLength();
3084 
3087  TessellationOptionsKit & UnsetEverything();
3088 
3089 
3097  bool ShowLevel(Tessellation::Type & out_type, Tessellation::Level & out_level, Tessellation::Chord::Limit & out_limit_type, double & out_limit, double & out_angle_tolerance) const;
3098 
3103  bool ShowAccuracy(Tessellation::Accuracy & out_type, bool & out_accurate_normals) const;
3104 
3108  bool ShowUVPointPreservation(bool & out_state) const;
3109 
3113  bool ShowMaximumEdgeLength(double & out_length) const;
3114  };
3115 
3116 private:
3118  Exchange();
3119 };
3120 
3121 }
3122 
3123 #endif
Definition: sprk_exchange.h:2303
Level
Definition: sprk_exchange.h:511
Type ObjectType() const
Definition: sprk_exchange.h:2057
Definition: sprk_exchange.h:42
Definition: sprk_exchange.h:613
Definition: sprk.h:238
Type ObjectType() const
Definition: sprk_exchange.h:163
Definition: sprk_exchange.h:754
Units
Definition: sprk_exchange.h:57
Definition: sprk.h:69
Definition: sprk_exchange.h:417
Version
Definition: sprk_exchange.h:659
Definition: sprk_exchange.h:521
Type ObjectType() const
Definition: sprk_exchange.h:2876
Format
Definition: sprk_exchange.h:601
Definition: sprk_exchange.h:2860
Format
Definition: sprk_exchange.h:759
Type ObjectType() const
Definition: sprk_exchange.h:2319
Type
Definition: sprk_exchange.h:502
Type ObjectType() const
Definition: sprk_exchange.h:1880
Definition: sprk_exchange.h:298
Definition: sprk_exchange.h:372
Definition: sprk_exchange.h:186
Type ObjectType() const
Definition: sprk_exchange.h:279
Type ObjectType() const
Definition: sprk_exchange.h:2174
Type ObjectType() const
Definition: sprk_exchange.h:98
Definition: sprk_exchange.h:131
Type ObjectType() const
Definition: sprk_exchange.h:2614
Type ObjectType() const
Definition: sprk_exchange.h:212
Definition: sprk_exchange.h:2041
Field
Definition: sprk_exchange.h:591
Type ObjectType() const
Definition: sprk_exchange.h:708
Definition: sprk_exchange.h:1763
Limit
Definition: sprk_exchange.h:526
Type ObjectType() const
Definition: sprk_exchange.h:2453
TessellationLevel
Definition: sprk_exchange.h:573
Definition: sprk_exchange.h:497
Definition: sprk_exchange.h:2598
Definition: sprk_exchange.h:77
Definition: sprk_exchange.h:586
Definition: hps.h:4150
Definition: hps.h:6647
Definition: sprk_exchange.h:253
Definition: sprk_exchange.h:2760
Definition: sprk_exchange.h:559
Type ObjectType() const
Definition: sprk_exchange.h:1779
Definition: sprk_exchange.h:654
SessionColor
Definition: sprk_exchange.h:637
Definition: sprk.h:1464
Definition: hps.h:41099
Definition: sprk_exchange.h:342
Type ObjectType() const
Definition: sprk_exchange.h:2993
Definition: sprk.h:430
Type ObjectType() const
Definition: sprk_exchange.h:903
BRepCompression
Definition: sprk_exchange.h:618
Definition: sprk_parasolid.h:39
BRepMode
Definition: sprk_exchange.h:483
ComponentType
Definition: sprk.h:1469
Accuracy
Definition: sprk_exchange.h:543
Definition: sprk_exchange.h:1864
Definition: sprk.h:2009
Content
Definition: sprk_exchange.h:564
Definition: sprk_exchange.h:881
Type ObjectType() const
Definition: sprk_exchange.h:445
Definition: sprk.h:2107
Definition: sprk_exchange.h:632
Type ObjectType() const
Definition: sprk_exchange.h:324
Type ObjectType() const
Definition: sprk_exchange.h:2776
Definition: sprk.h:2193
Definition: sprk_exchange.h:671
static Model CreateModel(char const *in_name="")
Definition: sprk_exchange.h:2158
Definition: sprk_exchange.h:2977
Type ObjectType() const
Definition: sprk_exchange.h:400
Definition: sprk_exchange.h:2437