DATAKIT SDK  V2026.1
dtk_maindoc.hpp
Go to the documentation of this file.
1 #ifndef __UTIL_DTK_DOCUMENT_HPP__
2 #define __UTIL_DTK_DOCUMENT_HPP__
3 
4 #include "def/define.h"
11 #include "util/dtk_maindoc_ptr.hpp"
13 #include "util/error_dtk.hpp"
15 #include "util/util_ent_dtk.hpp"
16 #include "util/util_ptr_dtk.hpp"
17 #include "util/util_stl_dtk.hpp"
19 
20 class Dtk_mesh;
22 class Dtk_feat;
24 class Dtk_Kinematic;
26 
27 
29 {
30  V5ReaderModule = 0, // CatiaV5
31  VdaReaderModule = 1, // VdaFS
32  InvReaderModule = 2, // Inventor
33  V4ReaderModule = 3, // CatiaV4
34  UgReaderModule = 4, // Unigraphics NX
35  XmtReaderModule = 5, // Parasolid using parasolid kernel
36  SwReaderModule = 6, // Solidworks
37  SeReaderModule = 7, // Solidedge
38  IgesReaderModule = 8, // Iges
39  StepReaderModule = 9, // Step
40  PsReaderModule = 10, // Parasolid via datakit
41  ProeReaderModule = 11, // Pro/Engineer - Creo Parametric
42  SatReaderModule = 12, // Internal Use Only
43  JtReaderModule = 13, // Jt
44  CgrReaderModule = 14, // Cgr
45  CaddsReaderModule = 15, // Cadds
46  AcisReaderModule = 16, // Acis
47  ProCeraReaderModule = 17,// ProCera dental format
48  CerconReaderModule = 18, // Cercon dental format
49  CerecReaderModule = 19, // Cerec Sirona dental format
50  DcmReaderModule = 20, // Dcm 3Shape dental format
51  _3dXmlReaderModule = 21, // Internal Use Only
52  XmlReaderModule = 22, // Internal Use Only
53  V6ReaderModule = 23, // 3DEXPERIENCE CatiaV6
54  DxfReaderModule = 24, // Dxf
55  PlmXmlReaderModule = 25, // PlmXml
56  Lava3mReaderModule = 26, // Lava 3M dental format
57  U3dReaderModule = 27, // Internal Use Only
58  PdfReaderModule = 28, // Internal Use Only
59  RnXmlReaderModule = 29, // Internal Use Only
60  _3dmReaderModule = 30, // Rhino
61  DwgReaderModule = 31, // Dwg
62  ObjReaderModule = 32, // Obj
63  IfcReaderModule = 33, // Ifc
64  BRepOccReaderModule = 34,// Brep Open Cascade
65  RevitReaderModule = 35, // Revit
66  CreoviewReaderModule = 36,// Creo View
67  StlReaderModule = 37, // Stl
68  FbxReaderModule = 38, // Fbx
69  CgmReaderModule = 39, // Computer Graphics Metafile
70  SdnfReaderModule = 40, // Computer Graphics Metafile
71  ArtReaderModule = 41, // Art
72  SmgReaderModule = 42, // Smg
73  PrcReaderModule = 43, // Prc
74  F3dReaderModule = 44, // F3d
75  DstvReaderModule = 45, // DSTV
76  GltfReaderModule = 46, // Gltf
77  NavisReaderModule = 47, // Navis
78  QifReaderModule = 48, // QIF
79  DwgDtkReaderModule = 49, // Dwg via datakit
80  Zw3dReaderModule = 50, // Zw3d
81  UsdReaderModule = 51, // USD
82 
85 };
86 
89 
90 
91 class Dtk_MainDoc;
92 
93 
102 {
103 protected:
104 
106  struct Dtk_Handle; // Not defined here
107  Dtk_Handle *_Private; // Handle
108 protected:
109  void _Init();
110  void _Reset();
111  void _Copy(const Dtk_Node&s);
112 
114  Dtk_DocElement(const Dtk_ID& inID, Dtk_string inName);
115 
117  virtual ~Dtk_DocElement();
118 
119 
122  void _AddChild(const Dtk_DocElementPtr& inChild);
123 
127  const Dtk_DocElementPtr _GetChild(const Dtk_Size_t& inPos) const;
128 
136  Dtk_ErrorStatus _ReplaceChild(const Dtk_Size_t& inPos, const Dtk_DocElementPtr& inNewChild);
137 
138  friend class Dtk_SmartPtr<Dtk_DocElement>;
139  friend class Dtk_MainDoc;
140 
141 public:
143  Dtk_Int32 DtkDynamicType(const int& inId);
144 
147 
151 
154  const Dtk_string& Name() const;
156 
159  Dtk_ID GetID() const;
160 
164 
168 
169  void GetReadID(Dtk_ID& outReadID) const;
170  void SetReadID(const Dtk_ID & inNewID);
171 
172 
176  void SetInfos(const Dtk_InfoPtr& inInfos);
177 
181  void SetMaterial(Dtk_MaterialPtr inMaterial);
182 
183 
187  void SetPreview(Dtk_PreviewPtr inPreview);
189 
190 
193  void AddMetaData(const Dtk_MetaDataPtr& inMetaData);
194 
198  void AddMetaDataGroup(const Dtk_MetaDataGroupPtr& inMetaDataGroup, Dtk_bool inAddMetadata = DTK_FALSE);
199 
202  void AddProperty(const Dtk_PropertiesPtr & inProperty);
203 
208 
213 
217 
221 };
222 
230 class Dtk_Node : public Dtk_DocElement
231 {
232 public:
233 
235  {
237  HasPoints = 1,
238  HasCurves = 2,
240  HasSolids = 8,
241  HasAxis = 16,
242  HasMesh = 32,
243  HasMeshSurfaces = 64
244  };
245 
247  {
248  NullType = 0,
249  BodyType, // for 3D
250  MeshType, // for 3D Tesselated
251  AnnotationSetType, // for FdtAnnotationSet -- Obsolete
252  FdtType, // for Fdt
253  DrawingType, // for 2D
254  KinematicsType, // Kinematics
255  AxisSystemType, // AxisPlacement
256  LayerInfosSetType, // LayerInfosSet
257  ColorInfosSetType, // ColorInfosSet
258  MetaDataType, // MetaData
259  ModelDisplayType, // Model Display
260  CameraType, // Camera
261  VirtualType, // just for containing children
262  ConstraintType, // ConstraintType
264  };
269  class FullType
270  {
271  public:
272  friend class Dtk_Node;
273  private:
275  NodeDataTypeEnum _PrimaryType;
277  type_detk _SubType;
278  public:
279  FullType( const NodeDataTypeEnum inPrimaryType, const type_detk inSubType ) : _PrimaryType(inPrimaryType), _SubType(inSubType) {}
281  FullType() : _PrimaryType(NullType), _SubType(DTK_TYPE_UNKNOWN) {}
282  inline NodeDataTypeEnum PrimaryType() const {return _PrimaryType;}
283  inline type_detk SubType() const {return _SubType;}
284  };
285 
286 
288  {
289  switch( inEnum )
290  {
291  case NullType: return L"NullType";
292  case BodyType: return L"BodyType";
293  case MeshType: return L"MeshType";
294  case AnnotationSetType: return L"AnnotationSetType";
295  case FdtType: return L"FdtType";
296  case DrawingType: return L"DrawingType";
297  case KinematicsType: return L"KinematicsType";
298  case AxisSystemType: return L"AxisSystemType";
299  case LayerInfosSetType: return L"LayerInfosSetType";
300  case ColorInfosSetType: return L"ColorInfosSetType";
301  case MetaDataType: return L"MetaDataType";
302  case VirtualType: return L"VirtualType";
303  case ModelDisplayType : return L"ModelDisplayType";
304  case CameraType : return L"CameraType";
305  case ConstraintType: return L"Constraint";
306  default: return L"Unknown";
307  }
308  }
309 
310  static inline Dtk_Int32 NodeDataStringToEnumType( const Dtk_string &type )
311  {
312  if( type == L"NullType" )
313  return NullType;
314  else if( type == L"BodyType" )
315  return BodyType;
316  else if( type == L"MeshType" )
317  return MeshType;
318  else if( type == L"AnnotationSetType" )
319  return AnnotationSetType;
320  else if( type == L"FdtType" )
321  return FdtType;
322  else if( type == L"DrawingType" )
323  return DrawingType;
324  else if( type == L"KinematicsType" )
325  return KinematicsType;
326  else if( type == L"AxisSystemType" )
327  return AxisSystemType;
328  else if (type == L"LayerInfosSetType")
329  return LayerInfosSetType;
330  else if (type == L"ColorInfosSetType")
331  return ColorInfosSetType;
332  else if( type == L"MetaDataType" )
333  return MetaDataType;
334  else if( type == L"VirtualType" )
335  return VirtualType;
336  else if (type == L"ModelDisplayType")
337  return ModelDisplayType;
338  else if (type == L"CameraType")
339  return CameraType;
340  else if (type == L"ConstraintType")
341  return ConstraintType;
342  else return -1;
343  }
344 
345 protected:
346 
347  enum { _typeID = DTK_TYPE_NODE };
348  struct Dtk_Handle; // Not defined here
349  Dtk_Handle *_Private; // Handle
350  friend class Dtk_Component;
351 private:
352  void _Init();
353  void _Reset();
354  void _Copy(const Dtk_Node&s);
355 
361  Dtk_Node(const Dtk_NodeID& inID,
362  const Dtk_ComponentID inOwningComponentId,
363  Dtk_string inName, const NodeDataTypeEnum& inDataNodeType, const Dtk_ID inEntityID, const Dtk_Int32 inBodyFlag = UnknownType, const type_detk inSubType = DTK_TYPE_NO_SUBTYPE);
364 
367 
368  friend class Dtk_SmartPtr<Dtk_Node>;
369 
370 public:
372  Dtk_Int32 DtkDynamicType(const int& inId);
373 
376 
379  inline void AddChild(const Dtk_NodePtr& inChild)
381 
385  inline const Dtk_NodePtr GetChild(const Dtk_Size_t& inPos) const
386  { return Dtk_NodePtr::DtkDynamicCast( _GetChild(inPos) ); }
387 
395  inline Dtk_ErrorStatus ReplaceChildNode(const Dtk_Size_t& inPos, const Dtk_NodePtr& inNewChild)
396  { return _ReplaceChild( inPos, Dtk_DocElementPtr::DtkDynamicCast(inNewChild) ); }
397 
402  //SetAsDeprecated("Undefined", "Use GetNodeFullType")
404 
409  //SetAsDeprecated("Undefined", "Use GetNodeFullType")
411 
415 
430 
431 
437 
443 
453 
454 
460 
461 
467 
473 
479 
485 
491 
497 
503 
509 
515 
520  //Dtk_KinematicsPtr GetDtk_KinematicPtr();
521 
525  void AddAssociatedEntity ( const Dtk_NodeConnectorPtr& inAssociatedEntity );
526 
530  void AddAssociatedEntities ( const Dtk_tab< Dtk_NodeConnectorPtr >& inAssociatedEntities );
531 
536 
537  //Internal Use
539  void SetStoredInfos(const Dtk_StoredInfoPtr& inInfos);
540 
544 };
546 
555 {
556 public:
558  {
566  };
568  {
573 
574  };
575 
577  {
578  switch( inEnum )
579  {
580  case ComponentMissing: return L"ComponentMissing";
581  case ComponentFound: return L"ComponentFound";
582  case ComponentInternal: return L"ComponentInternal";
583  case ComponentPhantom: return L"ComponentPhantom";
584  case ComponentAdditionnalReference: return L"ComponentAdditionnalReference";
585  case ComponentAssemblyGeometry: return L"ComponentAssemblyGeometry";
586  case ComponentWithUnavailableReader: return L"ComponentWithUnavailableReader";
587 
588  default: return L"Unknown";
589  }
590  }
591 
593  {
594  switch( inEnum )
595  {
596  case CatalogComponentType: return L"CatalogComponentType";
597  case VirtualComponentType: return L"VirtualComponentType";
598  case InstanceComponentType: return L"InstanceComponentType";
599  case PrototypeComponentType: return L"PrototypeComponentType";
600 
601  default: return L"Unknown";
602  }
603  }
604 
605  static inline Dtk_Int32 ComponentTypeStringToInt( const Dtk_string &name )
606  {
607  Dtk_Int32 result = -1;
608 
609  if( name.len() > 0 )
610  {
611  if( name == L"CatalogComponentType" )
612  result = CatalogComponentType;
613  else if( name == L"VirtualComponentType" )
614  result = VirtualComponentType;
615  else if( name == L"InstanceComponentType" )
616  result = InstanceComponentType;
617  else if( name == L"PrototypeComponentType" )
618  result = PrototypeComponentType;
619  }
620 
621  return result;
622  }
623 
624 protected:
626  struct Dtk_Handle; // Not defined here
627  Dtk_Handle *_Private; // Handle
628  friend class Dtk_MainDoc;
629  friend class Dtk_API;
632 private:
633  void _Init();
634  void _Reset();
635  void _Copy(const Dtk_Component&s);
636 
639  Dtk_Component( const Dtk_ComponentID& inID,
640  const ComponentTypeEnum& inComponentType,
641  const ComponentAvailabilityEnum& inComponentAvailability,
642  const Dtk_Int32& inAdditionnalReferenceFlag,
643  Dtk_string inComponentName,
644  Dtk_string inComponentFullPath,
645  Dtk_string inComponentInstanceName,
646  const Dtk_transfo& inTransformationMatrix,
647  const DtkReaderType& inAssociatedModule,
648  Dtk_string inComponentOriginalName);
649 
652  friend class Dtk_SmartPtr<Dtk_Component>;
653 
654  void _CheckGlobalDataSet();
655  void _CheckFdtDataSet();
656 public:
657 
659  Dtk_Int32 DtkDynamicType(const int& inId);
660 
663 
664  //InternalUse
666 
667 
670  inline void AddChild(const Dtk_ComponentPtr& inChild)
672 
676  inline const Dtk_ComponentPtr GetChild(const Dtk_Size_t& inPos) const
677  { return Dtk_ComponentPtr::DtkDynamicCast( _GetChild(inPos) ); }
678 
686  inline Dtk_ErrorStatus ReplaceChildComponent(const Dtk_Size_t& inPos, const Dtk_ComponentPtr& inNewChild)
687  { return _ReplaceChild( inPos, Dtk_DocElementPtr::DtkDynamicCast(inNewChild) ); }
688 
692 
696 
699  const Dtk_string& FullPathName() const;
700 
703  const Dtk_string& OriginalPathName() const;
704 
708 
711  const Dtk_string& InstanceName() const;
712 
716 
719 
722 
725 
728 
733 
739  Dtk_NodePtr CreateBodyNode( Dtk_string inName, const Dtk_ID& inBodyID, const Dtk_Int32 inBodyFlag , const type_detk inSubType = DTK_TYPE_BODY);
740 
746  Dtk_string inName,
747  const Dtk_ID& inMeshID,
748  const Dtk_Int32 inMeshFlag,
749  const type_detk inSubType = DTK_TYPE_MESH );
750 
756  Dtk_string inName,
757  const Dtk_ID& inFdtID, const type_detk inSubType = DTK_TYPE_FDT);
758 
764  Dtk_string inName,
765  const Dtk_ID& inKinematicID);
766 
771  Dtk_NodePtr CreateDrawingNode( Dtk_string inName, const Dtk_ID& inDrawingID);
772 
777  Dtk_NodePtr CreateMetaDataNode( Dtk_string inName, const Dtk_ID& inMetaDataID, const type_detk inSubType = DTK_TYPE_METADATA);
778 
783  Dtk_NodePtr CreateConstraintNode( Dtk_string inName, const Dtk_ID& inConstraintID, const type_detk inSubType = DTK_TYPE_CONSTRAINT);
784 
789  Dtk_NodePtr CreateAxisSystemNode( Dtk_string inName, const Dtk_ID& inAxisSystemID, const type_detk inSubType = DTK_TYPE_AXIS_SYSTEM);
790 
795  Dtk_NodePtr CreateLayerInfosSetNode( Dtk_string inName, const Dtk_ID& inLayerInfosSetID);
796 
801  Dtk_NodePtr CreateColorInfosSetNode( Dtk_string inName, const Dtk_ID& inColorInfosSetID);
802 
807  Dtk_NodePtr CreateModelDisplayNode( Dtk_string inName, const Dtk_ID& inDisplayModelID, const type_detk inSubType = DTK_TYPE_NO_SUBTYPE );
808 
813  Dtk_NodePtr CreateCameraNode( Dtk_string inName, const Dtk_ID& inCameraID);
814 
818  Dtk_NodePtr GetNodeByID( const Dtk_NodeID& inNodeID ) const;
819 
823  Dtk_NodePtr GetFatherNode(const Dtk_NodePtr& inNode) const;
824 
831  SetAsDeprecated("2022.1", "Use Dtk_Component::GetConceptionUnitScale(Dtk_Double64 &outUnitScale) method instead.")
834 
836  const Dtk_string & GetFileVersion()const;
837  void SetFileVersion(const Dtk_string & inFileVersion);
838 
841  void SetCurrentLayer(Dtk_Int32 inCurrentLayer);
842 
844  void GetVisibleLayers(Dtk_tab<Dtk_Int32> &outVisibleLayers)const;
845  void SetVisibleLayers(const Dtk_tab<Dtk_Int32> & inVisibleLayers);
846 
848  void GetSelectableLayers(Dtk_tab<Dtk_Int32> &outSelectableLayers)const;
849  void SetSelectableLayers(const Dtk_tab<Dtk_Int32> & inSelectableLayers);
850 
852  DtkErrorStatus GetSiblingName(Dtk_string &outSiblingName)const;
853  DtkErrorStatus SetSiblingName(const Dtk_string & inSiblingName);
854 
855 
859 
861  void SetSelectionDataSet( const Dtk_SelectionDataSetPtr& inSelectionDataSet);
862 
866 
867 
871 
877 
883 
887 
891 
895 
899 };
901 
909 class Dtk_MainDoc : public Dtk_Object
910 {
911  friend class Dtk_MainDocWrapper;
912 public:
913  struct Dtk_Handle; // Not defined here
914 protected:
916  Dtk_Handle *_Private; // Handle
917  friend class Dtk_API;
920 private:
921  void _Init();
922  void _Reset();
923  void _Copy(const Dtk_MainDoc&s);
924 
926  Dtk_MainDoc();
928  ~Dtk_MainDoc();
929 
930  void _AddComponentIntoPool(Dtk_ComponentPtr& outElt);
931 
932  friend class Dtk_SmartPtr<Dtk_MainDoc>;
933 public:
934 
937 
939  Dtk_Int32 DtkDynamicType(const int& inId);
940 
943 
946  void SetRootComponent(const Dtk_ComponentPtr& inRootComponent);
947 
951 
960 
968  const Dtk_ComponentPtr& inPrototype,
970  const Dtk_transfo& inTransformationMatrix);
971 
981  Dtk_string inComponentFullPath,
982  Dtk_string inComponentName,
983  const DtkReaderType& inAssociatedModule,
984  const Dtk_Component::ComponentAvailabilityEnum& inAvailability,
985  const int inAdditionnalReferenceFlag = 0,
986  Dtk_string inOriginalName=Dtk_string());
987 
994  Dtk_string inComponentName,
995  const DtkReaderType& inAssociatedModule,
996  Dtk_string inComponentFullPath,
997  const Dtk_Component::ComponentAvailabilityEnum& inAvailability);
998 
1007  Dtk_string inComponentFullPath,
1008  Dtk_string inComponentName,
1010  const Dtk_transfo& inTransformationMatrix,
1011  const DtkReaderType& inAssociatedModule = UnknownModule,
1013  Dtk_string inOriginalName = Dtk_string());
1014 
1015 
1016 
1020  Dtk_ComponentPtr GetComponentByID( const Dtk_ComponentID& inComponentID ) const;
1021 
1027 
1032 
1036 
1040 
1044 
1046  void SetMultiModelFlag(Dtk_bool inMultiModelFlag);
1047 
1053 
1058 
1063 
1064 };
1065 
1072 {
1073 public:
1076  {
1077  Unknown = 0,
1078  //Placement Reasons
1079  VerticallyAligned, //the pointing entity is bound to the the position of pointed one, so that they stay vertically aligned
1080  HorizontallyAligned, //the pointing entity is bound to the the position of pointed one, so that they stay horizontally aligned
1081  StackedLeft, //the pointing entity is bound to the the position of pointed one, so that it is kept to the left
1082  StackedRight, //the pointing entity is bound to the the position of pointed one, so that it is kept to the right
1083  StackedAbove, //the pointing entity is bound to the the position of pointed one, so that it is kept above
1084  StackedBelow, //the pointing entity is bound to the the position of pointed one, so that it is kept below
1085  PositionallyFixed, //the pointing entity positon is constrained by the pointed one
1086  OrientationallyFixed, //the pointing entity direction is constrained by the pointed one
1087  ForceHidden, //the pointed entity is forced to be hidden
1088  ForceVisible, //the pointed entity is forced to be visible
1089  ForceClipped, //the pointed entity is forced to be clipped by light section view
1090  KeepOnlyFdt, //keep only pmi
1091 
1092  //Category used to qualify links from the 1st Dtk_ReferenceBlockPtr - [PT] / [SL] / [PL] -
1093  //These links can apply to a reference into Dtk_ReferenceBlockPtr - 3 1st references handled - or to the common datum - the whole Dtk_ReferenceBlockPtr
1098 
1099  //Category used to qualify links from the 2nd Dtk_ReferenceBlockPtr - [PT] / [SL] / [PL] -
1100  //These links can apply to a reference into Dtk_ReferenceBlockPtr - 3 1st references handled - or to the common datum - the whole Dtk_ReferenceBlockPtr
1105 
1106  //Category used to qualify links from the 3rd Dtk_ReferenceBlockPtr - [PT] / [SL] / [PL] -
1107  //These links can apply to a reference into Dtk_ReferenceBlockPtr - 3 1st references handled - or to the common datum - the whole Dtk_ReferenceBlockPtr
1112 
1113  //General Associations
1125 
1127 
1128  };
1129  static inline Dtk_string ReasonLinkEnumToString(const ReasonLinkEnum& inEnum)
1130  {
1131  switch( inEnum )
1132  {
1133  case VerticallyAligned: return L"VerticallyAligned";
1134  case HorizontallyAligned: return L"HorizontallyAligned";
1135  case StackedLeft: return L"StackedLeft";
1136  case StackedRight: return L"StackedRight";
1137  case StackedAbove: return L"StackedAbove";
1138  case StackedBelow: return L"StackedBelow";
1139  case PositionallyFixed: return L"PositionallyFixed";
1140  case OrientationallyFixed: return L"OrientationallyFixed";
1141  case ForceHidden: return L"ForceHidden";
1142  case ForceVisible: return L"ForceVisible";
1143  case ForceClipped: return L"ForceClipped";
1144  case KeepOnlyFdt: return L"KeepOnlyFdt";
1145 
1146  case AssociatedGeometry: return L"AssociatedGeometry";
1147  case AssociatedFeature: return L"AssociatedFeature";
1148  case SubPMI: return L"SubPMI";
1149  case DefaultAnnotationLink: return L"DefaultAnnotationLink";
1150  case HighlightedGeometry: return L"HighlightedGeometry";
1151  case Support: return L"Support";
1152  case AssociatedAxisSystem: return L"AssociatedAxisSystem";
1153  case AssociatedXDirection: return L"AssociatedXDirection";
1154  case AssociatedYDirection: return L"AssociatedYDirection";
1155  case AssociatedZDirection: return L"AssociatedZDirection";
1156  case AssociatedCenterPoint: return L"AssociatedCenterPoint";
1157 
1158  case Context: return L"Context";
1159 
1160  case FirstRefBlockSituation_Common: return L"FirstRefBlockSituation_Common";
1161  case FirstRefBlockSituation_1: return L"FirstRefBlockSituation_1";
1162  case FirstRefBlockSituation_2: return L"FirstRefBlockSituation_2";
1163  case FirstRefBlockSituation_3: return L"FirstRefBlockSituation_3";
1164 
1165  case SecondRefBlockSituation_Common: return L"SecondRefBlockSituation_Common";
1166  case SecondRefBlockSituation_1: return L"SecondRefBlockSituation_1";
1167  case SecondRefBlockSituation_2: return L"SecondRefBlockSituation_2";
1168  case SecondRefBlockSituation_3: return L"SecondRefBlockSituation_3";
1169 
1170  case ThirdRefBlockSituation_Common: return L"ThirdRefBlockSituation_Common";
1171  case ThirdRefBlockSituation_1: return L"ThirdRefBlockSituation_1";
1172  case ThirdRefBlockSituation_2: return L"ThirdRefBlockSituation_2";
1173  case ThirdRefBlockSituation_3: return L"ThirdRefBlockSituation_3";
1174 
1175  default: return L"Unknown";
1176  }
1177  }
1178 
1181  {
1182  UnknownCategory = 0,
1183  PlacementCategory, //General Placement Category gathering all Placement Reasons
1186 
1190  };
1192  {
1193  switch( inEnum )
1194  {
1195  case PlacementCategory: return L"PlacementCategory";
1196  case GeneralAssociationCategory: return L"GeneralAssociationCategory";
1197  case VisibilityCategory: return L"VisibilityCategory";
1198  case FirstRefBlockSituationCategory: return L"FirstRefBlockSituationCategory";
1199  case SecondRefBlockSituationCategory: return L"SecondRefBlockSituationCategory";
1200  case ThirdRefBlockSituationCategory: return L"ThirdRefBlockSituationCategory";
1201  default: return L"UnknownCategory";
1202  }
1203  }
1204 
1206  {
1207  private:
1208  Dtk_ID _SubEntityID; // optional: Set of IDs (in case the connector links to a geometric entity (construction)
1209  type_detk _SubEntityType; // optional: The list of entities types
1210  public:
1211  inline SubEntity( ) : _SubEntityID(0), _SubEntityType(DTK_TYPE_UNKNOWN){}
1212  inline SubEntity( const Dtk_ID inSubEntityID, const type_detk inSubEntityType ) : _SubEntityID(inSubEntityID), _SubEntityType(inSubEntityType){}
1213  inline SubEntity( const SubEntity& inTobeCopied ) : _SubEntityID(inTobeCopied._SubEntityID), _SubEntityType(inTobeCopied._SubEntityType){}
1214  inline ~SubEntity() {}
1215 
1216  inline Dtk_ID GetSubEntityId() const {return _SubEntityID;}
1217  inline type_detk GetSubEntityType() const {return _SubEntityType;}
1218  friend Dtk_bool operator==(const SubEntity&, const SubEntity&);
1219 
1220  };
1221 
1222 protected:
1223  struct Dtk_Handle; // Not defined here
1224  Dtk_Handle *_Private; // Handle
1225 
1226  enum
1227  {
1229  };
1230 
1233 
1236 
1239 
1240  inline virtual Dtk_Object* Clone() { return new Dtk_NodeConnector(*this); }
1241 
1242 protected:
1243  void _Init();
1244  void _Reset();
1245  void _Copy(const Dtk_NodeConnector &s);
1246  friend class Dtk_SmartPtr<Dtk_NodeConnector>;
1247 public:
1248  friend class Dtk_Node;
1251 
1254 
1257 
1260 
1263 
1267  void SetAssociatedComponentID (const Dtk_ID &inComponentID);
1268 
1271  void GetAssociatedPathComponentID(Dtk_tab<Dtk_ID>& outAssociatedPathComponentID) const ;
1273  void SetAssociatedPathComponentID (const Dtk_tab<Dtk_ID> &inPathComponentID);
1277 
1279  Dtk_ID GetNodeId() const ;
1281  void SetNodeId(const Dtk_ID &inNodeId);
1282 
1283 
1286 
1292  Dtk_ErrorStatus GetSubEntities(Dtk_tab <Dtk_ID>& outEntitiesIDs, Dtk_tab <type_detk> & outEntitiesTypes) const;
1293 
1299  Dtk_ErrorStatus SetSubEntities(const Dtk_tab <Dtk_ID> &inEntitiesIDs, const Dtk_tab <type_detk> & inEntitiesTypes);
1300 
1305 
1310 
1315 
1320 
1324 
1327  void SetPointingEntityType( const Dtk_Node::FullType inPointingEntityType );
1328 
1331  void SetPointedEntityType( const type_detk inPointedEntityType);
1332 
1336 
1339  void SetReasonLink( const ReasonLinkEnum inReasonLink );
1340 
1345 
1346 };
1347 
1348 
1350 
1351 
1352 #endif
Dtk_NodeConnector::SetNodeId
void SetNodeId(const Dtk_ID &inNodeId)
Sets the Node id.
Dtk_Node::FullType::FullType
FullType(const NodeDataTypeEnum inPrimaryType, const type_detk inSubType)
Definition: dtk_maindoc.hpp:279
Dtk_Node::AnnotationSetType
@ AnnotationSetType
Definition: dtk_maindoc.hpp:251
Dtk_feat
Generic Feature All metric data in feature classes are given in MM All angular data are given in degr...
Definition: str_feat_dtk.hpp:6859
Dtk_NodeConnector::ReasonLinkEnum
ReasonLinkEnum
Reason - Type of the Dtk_NodeConnector -. It's used to filter connectors to same elements.
Definition: dtk_maindoc.hpp:1076
Dtk_Component::CreateCameraNode
Dtk_NodePtr CreateCameraNode(Dtk_string inName, const Dtk_ID &inCameraID)
Create a Camera Dtk_NodePtr from a Camera.
Dtk_NodeConnector::SetPointingEntityType
void SetPointingEntityType(const Dtk_Node::FullType inPointingEntityType)
Sets the pointing entity Type.
Dtk_NodeConnector::KeepOnlyFdt
@ KeepOnlyFdt
Definition: dtk_maindoc.hpp:1090
dtk_global_data_set_ptr.hpp
CaddsReaderModule
@ CaddsReaderModule
Definition: dtk_maindoc.hpp:45
Dtk_MainDoc::GetComponentByID
Dtk_ComponentPtr GetComponentByID(const Dtk_ComponentID &inComponentID) const
Retrieves a Dtk_ComponentPtr giving its ID.
RnXmlReaderModule
@ RnXmlReaderModule
Definition: dtk_maindoc.hpp:59
Dtk_Component::DtkDynamicType
Dtk_Int32 DtkDynamicType(const int &inId)
Retrieves the dynamic entity type.
UsdReaderModule
@ UsdReaderModule
Definition: dtk_maindoc.hpp:81
Dtk_NodeConnector::_Reset
void _Reset()
Dtk_ID
uint32_t Dtk_ID
Definition: define.h:692
Dtk_transfo
This is the Transformation dedicated class.
Definition: dtk_transfo.hpp:19
Dtk_Node::HasMeshSurfaces
@ HasMeshSurfaces
Definition: dtk_maindoc.hpp:243
CerconReaderModule
@ CerconReaderModule
Definition: dtk_maindoc.hpp:48
Dtk_NodeConnector::SetPointedEntityType
void SetPointedEntityType(const type_detk inPointedEntityType)
Sets the pointed entity Type.
Dtk_NodeConnector
This is the Dtk_NodeConnector Class. .
Definition: dtk_maindoc.hpp:1072
Dtk_DocElement::GetFatherID
Dtk_ID GetFatherID(Dtk_Size_t inIndex) const
Retrieves Dtk_DocElement ith FatherID - read only -.
PlmXmlReaderModule
@ PlmXmlReaderModule
Definition: dtk_maindoc.hpp:55
NavisReaderModule
@ NavisReaderModule
Definition: dtk_maindoc.hpp:77
DTK_TYPE_UNKNOWN
@ DTK_TYPE_UNKNOWN
Definition: define.h:37
Dtk_Component::CreateMeshNode
Dtk_NodePtr CreateMeshNode(Dtk_string inName, const Dtk_ID &inMeshID, const Dtk_Int32 inMeshFlag, const type_detk inSubType=DTK_TYPE_MESH)
Create a Mesh Dtk_NodePtr from a Mesh ID.
Dtk_Component::GetChild
const Dtk_ComponentPtr GetChild(const Dtk_Size_t &inPos) const
Retrieves the ith Dtk_ComponentPtr - read only -.
Definition: dtk_maindoc.hpp:676
Dtk_Node::GetDtk_ModelDisplayPtr
Dtk_ModelDisplayPtr GetDtk_ModelDisplayPtr()
Retrieves the Dtk_Node as a Dtk_ModelDisplayPtr - if exists -.
Dtk_NodeConnector::Support
@ Support
Definition: dtk_maindoc.hpp:1119
Dtk_DocElement::~Dtk_DocElement
virtual ~Dtk_DocElement()
Destructor.
Dtk_Node::FdtType
@ FdtType
Definition: dtk_maindoc.hpp:252
Dtk_Node::FullType::~FullType
~FullType()
Definition: dtk_maindoc.hpp:280
Dtk_NodeConnector::SubEntity::SubEntity
SubEntity(const SubEntity &inTobeCopied)
Definition: dtk_maindoc.hpp:1213
DTK_TYPE_MESH
@ DTK_TYPE_MESH
Definition: define.h:479
Dtk_Component::CatalogComponentType
@ CatalogComponentType
Definition: dtk_maindoc.hpp:571
_3dmReaderModule
@ _3dmReaderModule
Definition: dtk_maindoc.hpp:60
Dtk_Node::GetDtk_KinematicPtr
Dtk_KinematicPtr GetDtk_KinematicPtr()
Retrieves the Dtk_Node as a Dtk_KinematicPtr - if exists -.
Dtk_Node::BodyNodeDataTypeEnum
BodyNodeDataTypeEnum
Definition: dtk_maindoc.hpp:235
Dtk_Node::HasAxis
@ HasAxis
Definition: dtk_maindoc.hpp:241
Dtk_NodeConnector::GetSubEntities
Dtk_ErrorStatus GetSubEntities(Dtk_tab< Dtk_ID > &outEntitiesIDs, Dtk_tab< type_detk > &outEntitiesTypes) const
Retrieves The connected SubEntities - IDs and types -.
Dtk_Component::AddChild
void AddChild(const Dtk_ComponentPtr &inChild)
Adds a child Dtk_Component to main Component.
Definition: dtk_maindoc.hpp:670
DTK_TYPE_NODE_CONNECTOR
@ DTK_TYPE_NODE_CONNECTOR
Definition: define.h:485
Dtk_MainDoc::GetFatherComponent
Dtk_ComponentPtr GetFatherComponent(const Dtk_ComponentPtr &inComponent, Dtk_Size_t inIndex) const
Retrieves the inIndexth father of the giving Dtk_ComponentPtr.
Dtk_NodeConnector::Create
static Dtk_NodeConnectorPtr Create(const Dtk_NodeConnector &in)
Calls copy constructor to allocate a new object.
Dtk_DocElement::Dtk_DocElement
Dtk_DocElement(const Dtk_ID &inID, Dtk_string inName)
Dtk_Component::CreateLayerInfosSetNode
Dtk_NodePtr CreateLayerInfosSetNode(Dtk_string inName, const Dtk_ID &inLayerInfosSetID)
Create a LayerInfosSet Dtk_NodePtr from a LayerInfosSetPtr.
Dtk_DocElement::_Reset
void _Reset()
Dtk_NodeConnector::VerticallyAligned
@ VerticallyAligned
Definition: dtk_maindoc.hpp:1079
Dtk_NodeConnector::ThirdRefBlockSituation_1
@ ThirdRefBlockSituation_1
Definition: dtk_maindoc.hpp:1109
Dtk_Component::GetVisibleLayers
void GetVisibleLayers(Dtk_tab< Dtk_Int32 > &outVisibleLayers) const
Visible layer for Component.
DTK_TYPE_DOC_ELEMENT
@ DTK_TYPE_DOC_ELEMENT
Definition: define.h:512
Dtk_Node::HasSurfaces
@ HasSurfaces
Definition: dtk_maindoc.hpp:239
Dtk_DocElement::GetNumFathers
Dtk_Size_t GetNumFathers() const
GetNumFather.
Dtk_Component::CreateConstraintNode
Dtk_NodePtr CreateConstraintNode(Dtk_string inName, const Dtk_ID &inConstraintID, const type_detk inSubType=DTK_TYPE_CONSTRAINT)
Create a Constraint Dtk_NodePtr from a Dtk_ConstraintPtr.
Dtk_Component::_typeID
@ _typeID
Definition: dtk_maindoc.hpp:625
PsReaderModule
@ PsReaderModule
Definition: dtk_maindoc.hpp:40
Dtk_Component::SetOverrideSets
DtkErrorStatus SetOverrideSets(const Dtk_tab< Dtk_OverrideSetPtr > &inOverrideSets)
Set array of Override sets in a prototype component.
Dtk_Node::FullType::PrimaryType
NodeDataTypeEnum PrimaryType() const
Definition: dtk_maindoc.hpp:282
Dtk_Component::CreateAxisSystemNode
Dtk_NodePtr CreateAxisSystemNode(Dtk_string inName, const Dtk_ID &inAxisSystemID, const type_detk inSubType=DTK_TYPE_AXIS_SYSTEM)
Create a AxisSystem Dtk_NodePtr from a AxisSystemPtr.
Dtk_NodeConnector::StackedBelow
@ StackedBelow
Definition: dtk_maindoc.hpp:1084
Dtk_NodeConnector::ForceHidden
@ ForceHidden
Definition: dtk_maindoc.hpp:1087
Dtk_Node::NodeHasSolids
Dtk_bool NodeHasSolids() const
Return DTK_TRUE if Dtk_Node Type Body contains solid entity.
Dtk_Node::NodeHasPoints
Dtk_bool NodeHasPoints() const
Return DTK_TRUE if Dtk_Node Type Body or Mesh contains points entity.
Dtk_DocElement::_Private
Dtk_Handle * _Private
Definition: dtk_maindoc.hpp:106
Dtk_NodeConnector::ThirdRefBlockSituation_Common
@ ThirdRefBlockSituation_Common
Definition: dtk_maindoc.hpp:1108
Dtk_Component::GetCurrentLayer
Dtk_Int32 GetCurrentLayer() const
Current layer for Component.
Dtk_Node::HasSolids
@ HasSolids
Definition: dtk_maindoc.hpp:240
Dtk_Component::GetActivatedChildrenInCatalog
Dtk_tab< Dtk_Int32 > GetActivatedChildrenInCatalog() const
Return Activated Children Index or empty array if Component isn't a catalog.
Dtk_NodeConnector::AssociatedYDirection
@ AssociatedYDirection
Definition: dtk_maindoc.hpp:1122
Dtk_Component::CreateModelDisplayNode
Dtk_NodePtr CreateModelDisplayNode(Dtk_string inName, const Dtk_ID &inDisplayModelID, const type_detk inSubType=DTK_TYPE_NO_SUBTYPE)
Create a ModelDisplay Dtk_NodePtr from a DisplayModel.
Dtk_DocElement::GetMetaData
Dtk_MetaDataPtr GetMetaData(const Dtk_Size_t &inPos) const
Retrieves the ith Dtk_MetaDataPtr - read only -.
CerecReaderModule
@ CerecReaderModule
Definition: dtk_maindoc.hpp:49
Dtk_NodeConnector::Dtk_NodeConnector
Dtk_NodeConnector(const Dtk_NodeConnector &in)
Copy constructor.
Dtk_MainDoc::_Private
Dtk_Handle * _Private
Definition: dtk_maindoc.hpp:916
Dtk_NodeConnector::FirstRefBlockSituation_3
@ FirstRefBlockSituation_3
Definition: dtk_maindoc.hpp:1097
Dtk_Node::NodeDataTypeEnum
NodeDataTypeEnum
Definition: dtk_maindoc.hpp:247
PrcReaderModule
@ PrcReaderModule
Definition: dtk_maindoc.hpp:73
V5ReaderModule
@ V5ReaderModule
Definition: dtk_maindoc.hpp:30
Dtk_DocElement::_typeID
@ _typeID
Definition: dtk_maindoc.hpp:105
Dtk_API::Dtk_Component
friend class Dtk_Component
Definition: dtk_api.hpp:137
Dtk_Component::CreateKinematicsNode
Dtk_NodePtr CreateKinematicsNode(Dtk_string inName, const Dtk_ID &inKinematicID)
Create a Kinematic Dtk_NodePtr from a Dtk_KinematicPtr.
Dtk_Node::ModelDisplayType
@ ModelDisplayType
Definition: dtk_maindoc.hpp:259
Dtk_KinematicPtr
Dtk_SmartPtr< Dtk_Kinematic > Dtk_KinematicPtr
Definition: dtk_maindoc.hpp:24
SatReaderModule
@ SatReaderModule
Definition: dtk_maindoc.hpp:42
Dtk_DocElement::_Copy
void _Copy(const Dtk_Node &s)
Dtk_NodeConnector::_Private
Dtk_Handle * _Private
Definition: dtk_maindoc.hpp:1223
Dtk_NodeConnector::AssociatedAxisSystem
@ AssociatedAxisSystem
Definition: dtk_maindoc.hpp:1120
Zw3dReaderModule
@ Zw3dReaderModule
Definition: dtk_maindoc.hpp:80
Dtk_Node::_Private
Dtk_Handle * _Private
Definition: dtk_maindoc.hpp:348
Dtk_string
This is a high level string class.
Definition: dtk_string.hpp:53
Dtk_NodeConnector::StackedAbove
@ StackedAbove
Definition: dtk_maindoc.hpp:1083
Dtk_Node::NodeHasMeshSurfaces
Dtk_bool NodeHasMeshSurfaces() const
Return DTK_TRUE if Dtk_Node Type Body contains mesh surface entity.
Dtk_Size_t
size_t Dtk_Size_t
Definition: define.h:715
Dtk_NodeConnector::SubEntity
Definition: dtk_maindoc.hpp:1206
Dtk_MainDoc::SetMultiModelFlag
void SetMultiModelFlag(Dtk_bool inMultiModelFlag)
Set flag to indicate that document contains several independant models.
Dtk_MainDoc::_ReleaseComponents
void _ReleaseComponents()
Dtk_Component::IsAdditionnalReference
Dtk_bool IsAdditionnalReference() const
Return DTK_TRUE if Dtk_Component is Additionnal Reference.
Dtk_Node::KinematicsType
@ KinematicsType
Definition: dtk_maindoc.hpp:254
Dtk_Component::SetSiblingName
DtkErrorStatus SetSiblingName(const Dtk_string &inSiblingName)
XmlReaderModule
@ XmlReaderModule
Definition: dtk_maindoc.hpp:52
DTK_TYPE_AXIS_SYSTEM
@ DTK_TYPE_AXIS_SYSTEM
Definition: define.h:45
Dtk_Node::FullType::SubType
type_detk SubType() const
Definition: dtk_maindoc.hpp:283
Dtk_Node::FullType::FullType
FullType()
Definition: dtk_maindoc.hpp:281
Dtk_DocElement::DtkDynamicCast
static Dtk_DocElement * DtkDynamicCast(Dtk_Object *s)
Performs a dynamic cast - doesn't need RTTI -.
Dtk_Component::CreateColorInfosSetNode
Dtk_NodePtr CreateColorInfosSetNode(Dtk_string inName, const Dtk_ID &inColorInfosSetID)
Create a ColorInfosSet Dtk_NodePtr from a ColorInfosSetPtr.
Dtk_DocElement::AddProperty
void AddProperty(const Dtk_PropertiesPtr &inProperty)
Adds a Dtk_PropertiesPtr to the Dtk_DocElement.
Dtk_DocElement::AddMetaDataGroup
void AddMetaDataGroup(const Dtk_MetaDataGroupPtr &inMetaDataGroup, Dtk_bool inAddMetadata=DTK_FALSE)
Adds a Dtk_MetaDataGroupPtr to the Dtk_DocElement.
Dtk_Node::NodeHasAxis
Dtk_bool NodeHasAxis() const
Return DTK_TRUE if Dtk_Node Type Body contains axis entity.
Dtk_NodeConnector::PlacementCategory
@ PlacementCategory
Definition: dtk_maindoc.hpp:1183
Dtk_NodeConnector::SecondRefBlockSituationCategory
@ SecondRefBlockSituationCategory
Definition: dtk_maindoc.hpp:1188
Dtk_NodeConnector::SecondRefBlockSituation_2
@ SecondRefBlockSituation_2
Definition: dtk_maindoc.hpp:1103
dtk_metadata.hpp
Dtk_Component::CreateDrawingNode
Dtk_NodePtr CreateDrawingNode(Dtk_string inName, const Dtk_ID &inDrawingID)
Create a Drawing Dtk_NodePtr from a Dtk_DrawingPtr.
Dtk_DocElement::ReleasePreview
void ReleasePreview()
Dtk_NodeID
Dtk_ID Dtk_NodeID
Definition: dtk_maindoc.hpp:88
UnknownModule
@ UnknownModule
Definition: dtk_maindoc.hpp:83
Dtk_Node::HasCurves
@ HasCurves
Definition: dtk_maindoc.hpp:238
Dtk_Node::BodyType
@ BodyType
Definition: dtk_maindoc.hpp:249
Dtk_DocElement::_GetChild
const Dtk_DocElementPtr _GetChild(const Dtk_Size_t &inPos) const
Retrieves the ith Dtk_DocElement - read only -.
Dtk_NodeConnector::GetPointingEntityType
Dtk_Node::FullType GetPointingEntityType() const
Retrieves the pointing entity FullType. Should be the FullType of the Dtk_Node containing the Dtk_Nod...
Dtk_Node::CameraType
@ CameraType
Definition: dtk_maindoc.hpp:260
F3dReaderModule
@ F3dReaderModule
Definition: dtk_maindoc.hpp:74
DTK_FALSE
#define DTK_FALSE
Definition: define.h:731
StlReaderModule
@ StlReaderModule
Definition: dtk_maindoc.hpp:67
Dtk_Node::GetDtk_CameraPtr
Dtk_CameraPtr GetDtk_CameraPtr()
Retrieves the Dtk_Node as a Dtk_CameraPtr - if exists -.
Dtk_bool
char Dtk_bool
Definition: define.h:728
ProCeraReaderModule
@ ProCeraReaderModule
Definition: dtk_maindoc.hpp:47
Dtk_DocElement::_ReplaceChild
Dtk_ErrorStatus _ReplaceChild(const Dtk_Size_t &inPos, const Dtk_DocElementPtr &inNewChild)
Replaces a child by another one. Also update father lists.
Dtk_NodeConnector::Clone
virtual Dtk_Object * Clone()
Definition: dtk_maindoc.hpp:1240
AcisReaderModule
@ AcisReaderModule
Definition: dtk_maindoc.hpp:46
Dtk_API::_Init
void _Init()
Dtk_Component::ComponentAvailability
const ComponentAvailabilityEnum ComponentAvailability() const
Give Dtk_Component availability - read only -.
Dtk_Component::SetVisibleLayers
void SetVisibleLayers(const Dtk_tab< Dtk_Int32 > &inVisibleLayers)
Dtk_MainDoc::DevalidateComponent
Dtk_ErrorStatus DevalidateComponent(const Dtk_ComponentID &inComponentID)
Devalidates Component into MainDoc.
Dtk_Component::ReplaceChildComponent
Dtk_ErrorStatus ReplaceChildComponent(const Dtk_Size_t &inPos, const Dtk_ComponentPtr &inNewChild)
Replaces a child Dtk_ComponentPtr by another one. Also updates father lists.
Definition: dtk_maindoc.hpp:686
DtkReaderType
DtkReaderType
Definition: dtk_maindoc.hpp:29
Dtk_Node::GetDtk_AxisSystemPtr
Dtk_AxisSystemPtr GetDtk_AxisSystemPtr()
Retrieves the Dtk_Node as a Dtk_AxisSystemPtr - if exists -.
Dtk_MainDoc
This is the Document Class. The Dtk_MainDocPtr object is used as root element produced by a translati...
Definition: dtk_maindoc.hpp:910
Dtk_Component::ComponentAvailabilityEnum
ComponentAvailabilityEnum
Definition: dtk_maindoc.hpp:558
Dtk_NodeConnector::ThirdRefBlockSituation_3
@ ThirdRefBlockSituation_3
Definition: dtk_maindoc.hpp:1111
SwReaderModule
@ SwReaderModule
Definition: dtk_maindoc.hpp:36
Dtk_Component::VirtualComponentType
@ VirtualComponentType
Definition: dtk_maindoc.hpp:572
Dtk_Node::GetChild
const Dtk_NodePtr GetChild(const Dtk_Size_t &inPos) const
Retrieves the ith Dtk_Node - read only -.
Definition: dtk_maindoc.hpp:385
Dtk_Double64
double Dtk_Double64
Definition: define.h:702
Dtk_MainDoc::CreatePrototypeDtk_Component
Dtk_ComponentPtr CreatePrototypeDtk_Component(Dtk_string inComponentFullPath, Dtk_string inComponentName, const DtkReaderType &inAssociatedModule, const Dtk_Component::ComponentAvailabilityEnum &inAvailability, const int inAdditionnalReferenceFlag=0, Dtk_string inOriginalName=Dtk_string())
Creates a Prototype Dtk_ComponentPtr. This type handles Assemblies and part components.
Dtk_Node::UnknownType
@ UnknownType
Definition: dtk_maindoc.hpp:236
Dtk_MainDoc::IsMultiModel
Dtk_bool IsMultiModel() const
Indicate that document contains several independant models.
Dtk_Component::GetOverrideSets
DtkErrorStatus GetOverrideSets(Dtk_tab< Dtk_OverrideSetPtr > &outOverrideSet) const
Give array of Override sets in a prototype component
Dtk_Node::GetDtk_LayerInfosSetPtr
Dtk_LayerInfosSetPtr GetDtk_LayerInfosSetPtr()
Retrieves the Dtk_Node as a Dtk_LayerInfosSetPtr - if exists -.
Dtk_mesh
This is a high level mesh class.
Definition: util_mesh_dtk.hpp:485
Dtk_Component::SetSelectionDataSet
void SetSelectionDataSet(const Dtk_SelectionDataSetPtr &inSelectionDataSet)
Attach SelectionDataSet infos to the Dtk_Component - through the Dtk_GlobalDataSetPtr -.
Dtk_Component::InstanceComponentType
@ InstanceComponentType
Definition: dtk_maindoc.hpp:569
Dtk_Component::GetDefaultChildInCatalog
Dtk_Int32 GetDefaultChildInCatalog() const
Return Default Child Index or -1 if Component isn't a catalog.
Dtk_Node::GetAssociatedEntities
Dtk_ErrorStatus GetAssociatedEntities(Dtk_tab< Dtk_NodeConnectorPtr > &outAssociatedEntities)
Retrieves the entities associated to the Dtk_Node. They are retrieved via Dtk_NodeConnectorPtr.
Dtk_Kinematic
Dtk_Kinematic represents a kinematic.
Definition: util_kinematics_dtk.hpp:1828
util_draw_ptr_dtk.hpp
DTK_TYPE_NODE
@ DTK_TYPE_NODE
Definition: define.h:513
CgrReaderModule
@ CgrReaderModule
Definition: dtk_maindoc.hpp:44
Dtk_Component::CreateVirtualNode
Dtk_NodePtr CreateVirtualNode(Dtk_string inName, const type_detk inSubType=DTK_TYPE_NO_SUBTYPE)
Create a Virtual Dtk_NodePtr.
Dtk_NodeConnector::_Init
void _Init()
ObjReaderModule
@ ObjReaderModule
Definition: dtk_maindoc.hpp:62
QifReaderModule
@ QifReaderModule
Definition: dtk_maindoc.hpp:78
Dtk_NodeConnector::CheckAssociatedPathComponentID
Dtk_Int32 CheckAssociatedPathComponentID(const Dtk_MainDocPtr &inMainDocPtr)
Checks if the Path Component ID exist into Dtk_MainDocPtr.
Dtk_DocElement::SetInfos
void SetInfos(const Dtk_InfoPtr &inInfos)
Dtk_Node::GetNodeType
NodeDataTypeEnum GetNodeType() const
Retrieves the Dtk_Node Node Type - read only -.
Dtk_Node::GetDtk_DrawingPtr
Dtk_DrawingPtr GetDtk_DrawingPtr()
Retrieves the Dtk_Node as a Dtk_DrawingPtr - if exists -.
Dtk_Component::ComponentType
const ComponentTypeEnum & ComponentType() const
Retrieves the Dtk_Component Type - read only -.
Dtk_NodeConnector::AssociatedGeometry
@ AssociatedGeometry
Definition: dtk_maindoc.hpp:1114
Dtk_Node::GetNodeFullType
const Dtk_Node::FullType GetNodeFullType() const
Retrieves the Node FullType - Primary ans Sub Type - - read only -.
dtk_pnt.hpp
Dtk_Component::SetCurrentLayer
void SetCurrentLayer(Dtk_Int32 inCurrentLayer)
util_topology_ptr_dtk.hpp
Dtk_Node::AddAssociatedEntities
void AddAssociatedEntities(const Dtk_tab< Dtk_NodeConnectorPtr > &inAssociatedEntities)
Adds associated entities - Dtk_NodeConnectorPtr - to the Dtk_Node.
Dtk_NodeConnector::GetSubEntitiesNb
Dtk_Size_t GetSubEntitiesNb() const
Returns the number of the geometric entities.
Dtk_Component::ComponentFound
@ ComponentFound
Definition: dtk_maindoc.hpp:560
Dtk_DocElement::DtkDynamicType
Dtk_Int32 DtkDynamicType(const int &inId)
Retrieves the dynamic entity type.
DxfReaderModule
@ DxfReaderModule
Definition: dtk_maindoc.hpp:54
Dtk_Component::ComponentAssemblyGeometry
@ ComponentAssemblyGeometry
Definition: dtk_maindoc.hpp:564
Dtk_Component::GetConceptionUnitScale
Dtk_ErrorStatus GetConceptionUnitScale(Dtk_Double64 &outUnitScale) const
Get the Original Units for documents - geometrical data are given in MM (Scale to MM) /!
Dtk_NodeConnector::~Dtk_NodeConnector
~Dtk_NodeConnector()
Destructor.
U3dReaderModule
@ U3dReaderModule
Definition: dtk_maindoc.hpp:57
Dtk_DocElement::Name
const Dtk_string & Name() const
Retrieves the Dtk_DocElement Name - read only -.
Dtk_NodeConnector::DtkDynamicType
Dtk_Int32 DtkDynamicType(const Dtk_Int32 &inId)
Retrieves the dynamic entity type.
Dtk_Component::GetFileVersion
const Dtk_string & GetFileVersion() const
Get File Version.
Dtk_NodeConnector::Create
static Dtk_NodeConnectorPtr Create()
Calls default constructor to allocate a new object.
Dtk_Component::IsAssembly
Dtk_bool IsAssembly() const
Return DTK_TRUE if Dtk_Component is an assembly.
IgesReaderModule
@ IgesReaderModule
Definition: dtk_maindoc.hpp:38
Dtk_NodeConnector::ReasonCategoryEnum
ReasonCategoryEnum
Reason Category. Global Category of the NodeConnector uesed to gather Reason into families.
Definition: dtk_maindoc.hpp:1181
Dtk_MainDoc::CreateCatalogDtk_Component
Dtk_ComponentPtr CreateCatalogDtk_Component(Dtk_string inComponentFullPath, Dtk_string inComponentName, Dtk_string inInstanceName, const Dtk_transfo &inTransformationMatrix, const DtkReaderType &inAssociatedModule=UnknownModule, const Dtk_Component::ComponentAvailabilityEnum &inAvailability=Dtk_Component::ComponentInternal, Dtk_string inOriginalName=Dtk_string())
Creates a Catalog Dtk_ComponentPtr.
Dtk_NodeConnector::AssociatedCenterPoint
@ AssociatedCenterPoint
Definition: dtk_maindoc.hpp:1124
Dtk_NodeConnector::AddSubEntity
Dtk_ErrorStatus AddSubEntity(const SubEntity &inSubEntity)
Add a SubEntity - defined by their IDs and Types - to the SubEntities list.
dtk_override_ptr.hpp
_3dXmlReaderModule
@ _3dXmlReaderModule
Definition: dtk_maindoc.hpp:51
Dtk_Node::MaxNodeDataType
@ MaxNodeDataType
Definition: dtk_maindoc.hpp:263
Dtk_Node::HasPoints
@ HasPoints
Definition: dtk_maindoc.hpp:237
Dtk_Component::ComponentAdditionnalReference
@ ComponentAdditionnalReference
Definition: dtk_maindoc.hpp:563
Dtk_NodeConnector::StackedRight
@ StackedRight
Definition: dtk_maindoc.hpp:1082
DTK_TYPE_METADATA
@ DTK_TYPE_METADATA
Definition: define.h:518
V6ReaderModule
@ V6ReaderModule
Definition: dtk_maindoc.hpp:53
Dtk_NodeConnector::SetSubEntities
Dtk_ErrorStatus SetSubEntities(const Dtk_tab< Dtk_ID > &inEntitiesIDs, const Dtk_tab< type_detk > &inEntitiesTypes)
Returns the set of Additional Entities defined by their IDs and Types.
Dtk_Component::DevalidateNode
Dtk_ErrorStatus DevalidateNode(const Dtk_NodeID &inNodeID)
Devalidates Component into MainDoc.
SeReaderModule
@ SeReaderModule
Definition: dtk_maindoc.hpp:37
Dtk_Component::AddOverrideSet
DtkErrorStatus AddOverrideSet(const Dtk_OverrideSetPtr &inOverrideSet)
Add Override set to a prototype component
Dtk_FeaturePtr
Dtk_SmartPtr< Dtk_feat > Dtk_FeaturePtr
Definition: dtk_maindoc.hpp:22
Dtk_Component::TransformationMatrix
const Dtk_transfo & TransformationMatrix() const
Retrieves the Dtk_Component TransformationMatrix - read only -.
Dtk_API::_Reset
void _Reset()
Dtk_MeshPtr
Dtk_SmartPtr< Dtk_mesh > Dtk_MeshPtr
Definition: dtk_maindoc.hpp:20
Dtk_Component::ComponentWithUnavailableReader
@ ComponentWithUnavailableReader
Definition: dtk_maindoc.hpp:565
DcmReaderModule
@ DcmReaderModule
Definition: dtk_maindoc.hpp:50
MaxReaderModules
@ MaxReaderModules
Definition: dtk_maindoc.hpp:84
Dtk_Component::SetFileVersion
void SetFileVersion(const Dtk_string &inFileVersion)
util_ent_dtk.hpp
Dtk_Node
This is the Node Class.
Definition: dtk_maindoc.hpp:231
Dtk_Node::GetStoredInfos
Dtk_StoredInfoPtr GetStoredInfos() const
Dtk_DocElement::AddMetaData
void AddMetaData(const Dtk_MetaDataPtr &inMetaData)
Adds a Dtk_MetaDataPtr to the Dtk_DocElement.
Dtk_NodeConnector::ThirdRefBlockSituation_2
@ ThirdRefBlockSituation_2
Definition: dtk_maindoc.hpp:1110
DTK_TYPE_BODY
@ DTK_TYPE_BODY
Definition: define.h:492
RevitReaderModule
@ RevitReaderModule
Definition: dtk_maindoc.hpp:65
Dtk_NodeConnector::ReasonLinkEnumToString
static Dtk_string ReasonLinkEnumToString(const ReasonLinkEnum &inEnum)
Definition: dtk_maindoc.hpp:1129
Dtk_Int32
int32_t Dtk_Int32
Definition: define.h:690
Dtk_Node::FullType
This is the Node FullType Class The Dtk_Node::FullType object is used to retrieve the full informatio...
Definition: dtk_maindoc.hpp:270
ArtReaderModule
@ ArtReaderModule
Definition: dtk_maindoc.hpp:71
Dtk_Component::ComponentAvailabilityEnumToString
static Dtk_string ComponentAvailabilityEnumToString(const ComponentAvailabilityEnum &inEnum)
Definition: dtk_maindoc.hpp:576
Dtk_Node::MetaDataType
@ MetaDataType
Definition: dtk_maindoc.hpp:258
dtk_maindoc_ptr.hpp
Dtk_Node::NullType
@ NullType
Definition: dtk_maindoc.hpp:248
Dtk_NodeConnector::Context
@ Context
Definition: dtk_maindoc.hpp:1126
Dtk_Node::GetDtk_ConstraintPtr
Dtk_ConstraintPtr GetDtk_ConstraintPtr()
Retrieves the Dtk_Node as a Dtk_ConstraintPtr - if exists -.
V4ReaderModule
@ V4ReaderModule
Definition: dtk_maindoc.hpp:33
Dtk_Component::ComponentTypeEnum
ComponentTypeEnum
Definition: dtk_maindoc.hpp:568
Dtk_Component::GetSiblingName
DtkErrorStatus GetSiblingName(Dtk_string &outSiblingName) const
SiblingName for Component.
Dtk_MainDoc::CreateInstanceDtk_Component
Dtk_ComponentPtr CreateInstanceDtk_Component(const Dtk_ComponentPtr &inPrototype, Dtk_string inInstanceName, const Dtk_transfo &inTransformationMatrix)
Creates a physical Dtk_ComponentPtr.
Dtk_Component::ComponentTypeEnumToString
static Dtk_string ComponentTypeEnumToString(const ComponentTypeEnum &inEnum)
Definition: dtk_maindoc.hpp:592
Dtk_Node::ConstraintType
@ ConstraintType
Definition: dtk_maindoc.hpp:262
Dtk_DocElement::GetInfos
Dtk_InfoPtr GetInfos() const
Retrieves the Dtk_DocElement Dtk_InfoPtr - read only -.
Dtk_Component::CreateFdtNode
Dtk_NodePtr CreateFdtNode(Dtk_string inName, const Dtk_ID &inFdtID, const type_detk inSubType=DTK_TYPE_FDT)
Create a Fdt Dtk_NodePtr from a Dtk_FdtPtr ID.
Dtk_NodeConnector::ForceClipped
@ ForceClipped
Definition: dtk_maindoc.hpp:1089
StepReaderModule
@ StepReaderModule
Definition: dtk_maindoc.hpp:39
Dtk_DocElement::SetMaterial
void SetMaterial(Dtk_MaterialPtr inMaterial)
DstvReaderModule
@ DstvReaderModule
Definition: dtk_maindoc.hpp:75
Dtk_SmartPtr::DtkDynamicCast
static Dtk_SmartPtr< T > DtkDynamicCast(const Dtk_SmartPtr< T2 > &p)
Definition: util_ptr_dtk.hpp:101
Dtk_Node::DtkDynamicCast
static Dtk_Node * DtkDynamicCast(Dtk_Object *s)
Performs a dynamic cast - doesn't need RTTI -.
Dtk_NodeConnector::GetAssociatedComponentID
Dtk_ID GetAssociatedComponentID() const
Returns the Component ID referenced by the connector.
error_dtk.hpp
Dtk_NodeConnector::HorizontallyAligned
@ HorizontallyAligned
Definition: dtk_maindoc.hpp:1080
Dtk_Node::AddChild
void AddChild(const Dtk_NodePtr &inChild)
Adds a child Dtk_Node to main Node.
Definition: dtk_maindoc.hpp:379
Dtk_ErrorStatus
Dtk_ErrorStatus
Definition: error_dtk.hpp:6
Dtk_DocElement::GetNumChildren
Dtk_Size_t GetNumChildren() const
Retrieves the number of the Dtk_DocElement children - read only -.
Dtk_Node::SetStoredInfos
void SetStoredInfos(const Dtk_StoredInfoPtr &inInfos)
SdnfReaderModule
@ SdnfReaderModule
Definition: dtk_maindoc.hpp:70
Dtk_NodeConnector::FirstRefBlockSituationCategory
@ FirstRefBlockSituationCategory
Definition: dtk_maindoc.hpp:1187
Dtk_NodeConnector::GetPointedEntityType
type_detk GetPointedEntityType() const
Retrieves the pointed entity Type.
Dtk_NodeConnector::GetAssociatedPathComponentID
void GetAssociatedPathComponentID(Dtk_tab< Dtk_ID > &outAssociatedPathComponentID) const
DTK_TYPE_FDT
@ DTK_TYPE_FDT
Definition: define.h:435
Dtk_NodeConnector::ThirdRefBlockSituationCategory
@ ThirdRefBlockSituationCategory
Definition: dtk_maindoc.hpp:1189
Dtk_Node::LayerInfosSetType
@ LayerInfosSetType
Definition: dtk_maindoc.hpp:256
Dtk_SmartPtr
Definition: util_ptr_dtk.hpp:37
Dtk_Node::AddAssociatedEntity
void AddAssociatedEntity(const Dtk_NodeConnectorPtr &inAssociatedEntity)
Retrieves the Dtk_Node as a Dtk_KinematicsPtr - if exists -.
Dtk_Component::GetAssociatedModuleType
const DtkReaderType & GetAssociatedModuleType() const
Retrieves the Dtk_Component AssociatedModuleType - read only -.
Dtk_NodeConnector::SetReasonLink
void SetReasonLink(const ReasonLinkEnum inReasonLink)
Sets the Reason Link of the Dtk_NodeConnector to specify the reason of the connection.
Dtk_Component::ComponentInternal
@ ComponentInternal
Definition: dtk_maindoc.hpp:561
Dtk_NodeConnector::ReasonCategoryEnumToString
static Dtk_string ReasonCategoryEnumToString(const ReasonCategoryEnum &inEnum)
Definition: dtk_maindoc.hpp:1191
VdaReaderModule
@ VdaReaderModule
Definition: dtk_maindoc.hpp:31
Dtk_Component::CreateMetaDataNode
Dtk_NodePtr CreateMetaDataNode(Dtk_string inName, const Dtk_ID &inMetaDataID, const type_detk inSubType=DTK_TYPE_METADATA)
Create a MetaData Dtk_NodePtr from a Dtk_MetaDataPtr.
Dtk_Node::NodeHasCurves
Dtk_bool NodeHasCurves() const
Return DTK_TRUE if Dtk_Node Type Body or Mesh contains curves entity.
Dtk_Component::CreateBodyNode
Dtk_NodePtr CreateBodyNode(Dtk_string inName, const Dtk_ID &inBodyID, const Dtk_Int32 inBodyFlag, const type_detk inSubType=DTK_TYPE_BODY)
Create a Body Dtk_NodePtr from a body ID.
Dtk_DocElement::GetID
Dtk_ID GetID() const
Retrieves the Dtk_DocElement ID - read only -.
Dtk_Node::GetDtk_MetaDataPtr
Dtk_MetaDataPtr GetDtk_MetaDataPtr()
Retrieves the Dtk_Node as a Dtk_MetaDataPtr - if exists -.
DTK_TYPE_DOCUMENT
@ DTK_TYPE_DOCUMENT
Definition: define.h:511
Dtk_DocElement::SetPreview
void SetPreview(Dtk_PreviewPtr inPreview)
Dtk_NodeConnector::Dtk_NodeConnector
Dtk_NodeConnector()
Default constructor.
Dtk_MainDoc::SetRootComponent
void SetRootComponent(const Dtk_ComponentPtr &inRootComponent)
Set the root Dtk_ComponentPtr.
Dtk_NodeConnector::SetAssociatedComponentID
void SetAssociatedComponentID(const Dtk_ID &inComponentID)
Sets the component ID.
dtk_transfo.hpp
Dtk_pnt
This is a mathematical point class.
Definition: dtk_pnt.hpp:20
Dtk_Component::InstanceName
const Dtk_string & InstanceName() const
Retrieves the Dtk_Component InstanceName - read only -.
type_detk
type_detk
Definition: define.h:32
Dtk_Component::ComponentPhantom
@ ComponentPhantom
Definition: dtk_maindoc.hpp:562
Dtk_DocElement::GetMetaDataGroup
Dtk_MetaDataGroupPtr GetMetaDataGroup(const Dtk_Size_t &inPos) const
Retrieves the ith Dtk_MetaDataGrouplPtr - read only -.
Dtk_NodeConnector::ForceVisible
@ ForceVisible
Definition: dtk_maindoc.hpp:1088
Dtk_MainDoc::GetNumComponents
Dtk_Size_t GetNumComponents() const
Give number of Components in the Dtk_MainDoc (useful if you want to handle progress bar).
Dtk_Component::SetConceptionUnitScale
void SetConceptionUnitScale(Dtk_Double64 inUnitScale)
Dtk_DocElement::GetMaterial
Dtk_MaterialPtr GetMaterial() const
Retrieves the Dtk_DocElement Dtk_MaterialPtr - read only -.
Dtk_Component::GetNumOverrideSets
Dtk_Size_t GetNumOverrideSets() const
Give number of Override sets in a prototype component
Dtk_Component::FullPathName
const Dtk_string & FullPathName() const
Retrieves the Dtk_Component FullPathName - read only -.
Dtk_NodeConnector::PositionallyFixed
@ PositionallyFixed
Definition: dtk_maindoc.hpp:1085
Dtk_Component::GetFatherNode
Dtk_NodePtr GetFatherNode(const Dtk_NodePtr &inNode) const
Retrieves the father Dtk_NodePtr of the given Dtk_NodePtr.
Dtk_NodeConnector::get_type_detk
type_detk get_type_detk() const
Definition: dtk_maindoc.hpp:1262
util_stl_dtk.hpp
Dtk_NodeConnector::HighlightedGeometry
@ HighlightedGeometry
Definition: dtk_maindoc.hpp:1118
Dtk_DocElement::SetReadID
void SetReadID(const Dtk_ID &inNewID)
Dtk_Node::ReplaceChildNode
Dtk_ErrorStatus ReplaceChildNode(const Dtk_Size_t &inPos, const Dtk_NodePtr &inNewChild)
Replaces a child Dtk_NodePtr by another one. Also updates father lists.
Definition: dtk_maindoc.hpp:395
Dtk_Node::_typeID
@ _typeID
Definition: dtk_maindoc.hpp:347
Dtk_Component::GetSelectableLayers
void GetSelectableLayers(Dtk_tab< Dtk_Int32 > &outSelectableLayers) const
Selectable layer for Component.
Dtk_NodeConnector::SubEntity::SubEntity
SubEntity(const Dtk_ID inSubEntityID, const type_detk inSubEntityType)
Definition: dtk_maindoc.hpp:1212
Dtk_NodeConnector::SetSubEntities
Dtk_ErrorStatus SetSubEntities(const Dtk_tab< SubEntity > &inSubEntities)
Sets of SubEntities - defined by their IDs and Types -.
Dtk_Node::NodeDataTypeEnumToString
static Dtk_string NodeDataTypeEnumToString(const NodeDataTypeEnum &inEnum)
Definition: dtk_maindoc.hpp:287
Dtk_Node::GetDtk_MeshPtr
Dtk_MeshPtr GetDtk_MeshPtr()
Retrieves the Dtk_Node as a Dtk_meshPtr - if exists -.
util_ptr_dtk.hpp
Dtk_Component::SetAsDeprecated
SetAsDeprecated("2022.1", "Use Dtk_Component::GetConceptionUnitScale(Dtk_Double64 &outUnitScale) method instead.") Dtk_Double64 GetConceptionUnitScale() const
Get the Original Units for documents.
define.h
Dtk_MainDoc::_ReleaseNodeConnectors
void _ReleaseNodeConnectors()
Dtk_Component::DtkDynamicCast
static Dtk_Component * DtkDynamicCast(Dtk_Object *s)
Performs a dynamic cast - doesn't need RTTI -.
DTK_TYPE_COMPONENT
@ DTK_TYPE_COMPONENT
Definition: define.h:514
Dtk_Component::SetComponentAvailability
Dtk_ErrorStatus SetComponentAvailability(const ComponentAvailabilityEnum &inComponentAvailability)
Dtk_NodeConnector::SubEntity::SubEntity
SubEntity()
Definition: dtk_maindoc.hpp:1211
Dtk_NodeConnector::VisibilityCategory
@ VisibilityCategory
Definition: dtk_maindoc.hpp:1185
Dtk_MainDoc::DtkDynamicType
Dtk_Int32 DtkDynamicType(const int &inId)
Retrieves the dynamic entity type.
Dtk_Node::NodeDataStringToEnumType
static Dtk_Int32 NodeDataStringToEnumType(const Dtk_string &type)
Definition: dtk_maindoc.hpp:310
Dtk_tab< Dtk_NodeConnectorPtr >
Dtk_Component::GetNodeByID
Dtk_NodePtr GetNodeByID(const Dtk_NodeID &inNodeID) const
Retrieves a Dtk_NodePtr from the Dtk_Component NodesPool giving his Id.
DwgDtkReaderModule
@ DwgDtkReaderModule
Definition: dtk_maindoc.hpp:79
Dtk_Node::GetDtk_AdvancedFeaturePtr
Dtk_ObjectPtr GetDtk_AdvancedFeaturePtr()
Retrieves the Dtk_Node as a Dtk_AdvancedFeaturePtr - if exists - Internal Use !!!
Dtk_Node::GetDtk_FdtPtr
Dtk_FdtPtr GetDtk_FdtPtr()
Retrieves the Dtk_Node as a Dtk_FdtPtr - if exists -.
Dtk_DocElement::GetNumMetaData
Dtk_Size_t GetNumMetaData() const
Retrieves the number of the Dtk_MetaDataPtr - read only -.
DTK_TYPE_CONSTRAINT
@ DTK_TYPE_CONSTRAINT
Definition: define.h:610
Dtk_DocElement::GetReadID
void GetReadID(Dtk_ID &outReadID) const
Dtk_NodeConnector::DefaultAnnotationLink
@ DefaultAnnotationLink
Definition: dtk_maindoc.hpp:1117
Dtk_Component::GetGlobalDataSet
const Dtk_GlobalDataSetPtr GetGlobalDataSet() const
Retrieve the Dtk_GlobalDataSetPtr attached to the Dtk_Component - get only -.
CgmReaderModule
@ CgmReaderModule
Definition: dtk_maindoc.hpp:69
Dtk_NodeConnector::GetReasonLink
Dtk_NodeConnector::ReasonLinkEnum GetReasonLink(ReasonCategoryEnum &outReasonCategory) const
Gets the Reason Link of the Dtk_NodeConnector to specify the reason of the connection.
FbxReaderModule
@ FbxReaderModule
Definition: dtk_maindoc.hpp:68
Dtk_NodeConnector::GetNodeId
Dtk_ID GetNodeId() const
Returns the Node id referenced by the connector.
Dtk_MainDoc::DtkDynamicCast
static Dtk_MainDoc * DtkDynamicCast(Dtk_Object *s)
Performs a dynamic cast - doesn't need RTTI -.
Dtk_NodeConnector::SecondRefBlockSituation_Common
@ SecondRefBlockSituation_Common
Definition: dtk_maindoc.hpp:1101
SmgReaderModule
@ SmgReaderModule
Definition: dtk_maindoc.hpp:72
Dtk_NodeConnector::SecondRefBlockSituation_3
@ SecondRefBlockSituation_3
Definition: dtk_maindoc.hpp:1104
IfcReaderModule
@ IfcReaderModule
Definition: dtk_maindoc.hpp:63
DTK_TYPE_NO_SUBTYPE
@ DTK_TYPE_NO_SUBTYPE
Definition: define.h:543
Dtk_Component::GetBoundingBox
Dtk_ErrorStatus GetBoundingBox(Dtk_pnt &outMin, Dtk_pnt &outMax)
Get BoundingBox on Prototype Component if it can be read in original file.
Dtk_NodeConnector::GeneralAssociationCategory
@ GeneralAssociationCategory
Definition: dtk_maindoc.hpp:1184
Dtk_Node::GetDtk_ColorInfosSetPtr
Dtk_ColorInfosSetPtr GetDtk_ColorInfosSetPtr()
Retrieves the Dtk_Node as a Dtk_ColorInfosSetPtr - if exists -.
Dtk_Component::PrototypeComponentType
@ PrototypeComponentType
Definition: dtk_maindoc.hpp:570
Dtk_Node::GetDtk_FeaturePtr
Dtk_FeaturePtr GetDtk_FeaturePtr()
Retrieves the Dtk_Node as a Dtk_FeaturePtr - if exists -.
Dtk_NodeConnector::FirstRefBlockSituation_Common
@ FirstRefBlockSituation_Common
Definition: dtk_maindoc.hpp:1094
Dtk_DocElement
This is the Main Doc Element Class The Dtk_DocElement object is common parent class of the Dtk_Node a...
Definition: dtk_maindoc.hpp:102
Dtk_Node::ColorInfosSetType
@ ColorInfosSetType
Definition: dtk_maindoc.hpp:257
XmtReaderModule
@ XmtReaderModule
Definition: dtk_maindoc.hpp:35
Dtk_DocElement::GetNumMetaDataGroup
Dtk_Size_t GetNumMetaDataGroup() const
Retrieves the number of the Dtk_MetaDataGroupPtr - read only -.
Dtk_Component::ComponentMissing
@ ComponentMissing
Definition: dtk_maindoc.hpp:559
Dtk_string::len
int len() const
Retrieve the length of the Dtk_string.
Dtk_NodeConnector::FirstRefBlockSituation_1
@ FirstRefBlockSituation_1
Definition: dtk_maindoc.hpp:1095
Dtk_Object
Definition: dtk_object.hpp:8
Dtk_Component
This is the Component Class. The Dtk_ComponentPtr object is used as element into an assembly tree....
Definition: dtk_maindoc.hpp:555
Dtk_NodeConnector::SetAssociatedPathComponentID
void SetAssociatedPathComponentID(const Dtk_tab< Dtk_ID > &inPathComponentID)
Sets the Path Component ID from Root to Target.
Dtk_DocElement::_AddChild
void _AddChild(const Dtk_DocElementPtr &inChild)
Adds a child Dtk_DocElement to main Element.
dtk_string.hpp
InvReaderModule
@ InvReaderModule
Definition: dtk_maindoc.hpp:32
Dtk_Component::GetNumNodes
Dtk_Size_t GetNumNodes() const
Give number of Nodes in the Component (useful if you want to handle progress bar).
Dtk_NodeConnector::SubEntity::operator==
friend Dtk_bool operator==(const SubEntity &, const SubEntity &)
Dtk_MainDoc::Create
static Dtk_MainDocPtr Create()
Calls default constructor to allocate a new object.
Dtk_ComponentID
Dtk_ID Dtk_ComponentID
Definition: dtk_maindoc.hpp:87
Dtk_NodeConnector::SubEntity::GetSubEntityType
type_detk GetSubEntityType() const
Definition: dtk_maindoc.hpp:1217
Dtk_MainDoc::GetNumFatherComponent
Dtk_Size_t GetNumFatherComponent(const Dtk_ComponentPtr &inComponent)
Retrieves the inIndexth father of the giving Dtk_ComponentPtr.
JtReaderModule
@ JtReaderModule
Definition: dtk_maindoc.hpp:43
Dtk_NodeConnector::AssociatedZDirection
@ AssociatedZDirection
Definition: dtk_maindoc.hpp:1123
Dtk_NodeConnector::StackedLeft
@ StackedLeft
Definition: dtk_maindoc.hpp:1081
Dtk_Component::OriginalPathName
const Dtk_string & OriginalPathName() const
Retrieves the Dtk_Component OriginalPathName (read in file) - read only -.
Dtk_MainDoc::CreateVirtualDtk_Component
Dtk_ComponentPtr CreateVirtualDtk_Component(Dtk_string inComponentName, const DtkReaderType &inAssociatedModule, Dtk_string inComponentFullPath, const Dtk_Component::ComponentAvailabilityEnum &inAvailability)
Creates a virtual Dtk_ComponentPtr.
Dtk_Node::HasMesh
@ HasMesh
Definition: dtk_maindoc.hpp:242
Dtk_Component::SetSelectableLayers
void SetSelectableLayers(const Dtk_tab< Dtk_Int32 > &inSelectableLayers)
catiav5w::inInstanceName
const Dtk_string & inInstanceName
Definition: catiav5w.hpp:621
CreoviewReaderModule
@ CreoviewReaderModule
Definition: dtk_maindoc.hpp:66
Dtk_Component::_ReleaseVolatileData
void _ReleaseVolatileData()
Dtk_Node::VirtualType
@ VirtualType
Definition: dtk_maindoc.hpp:261
PdfReaderModule
@ PdfReaderModule
Definition: dtk_maindoc.hpp:58
Dtk_NodeConnector::AssociatedXDirection
@ AssociatedXDirection
Definition: dtk_maindoc.hpp:1121
Dtk_DocElement::_Init
void _Init()
Dtk_NodeConnector::GetSubEntities
Dtk_ErrorStatus GetSubEntities(Dtk_tab< SubEntity > &outSubEntities) const
Retrieves the SubEntities array - defined by their IDs and Types -.
Dtk_Node::DrawingType
@ DrawingType
Definition: dtk_maindoc.hpp:253
Dtk_Node::GetEntityID
Dtk_NodeID GetEntityID() const
Retrieves the Dtk_Node EntityID - read only -.
Dtk_Node::NodeHasSurfaces
Dtk_bool NodeHasSurfaces() const
Return DTK_TRUE if Dtk_Node Type Body contains surfacic entity.
GltfReaderModule
@ GltfReaderModule
Definition: dtk_maindoc.hpp:76
Dtk_Node::NodeHasMesh
Dtk_bool NodeHasMesh() const
Return DTK_TRUE if Dtk_Node Type Body or Mesh contains mesh entity.
Dtk_NodeConnector::OrientationallyFixed
@ OrientationallyFixed
Definition: dtk_maindoc.hpp:1086
Dtk_DocElement::Name
Dtk_string & Name()
Dtk_NodeConnector::SecondRefBlockSituation_1
@ SecondRefBlockSituation_1
Definition: dtk_maindoc.hpp:1102
Dtk_Component::GetConnectorsPointingToThisComponent
Dtk_ErrorStatus GetConnectorsPointingToThisComponent(Dtk_tab< Dtk_NodeConnectorPtr > &outConnectedEntities)
Retrieves the connectors pointing on this component.
Dtk_Component::Dtk_MainDoc
friend class Dtk_MainDoc
Definition: dtk_maindoc.hpp:628
Dtk_Node::AxisSystemType
@ AxisSystemType
Definition: dtk_maindoc.hpp:255
Dtk_Node::DtkDynamicType
Dtk_Int32 DtkDynamicType(const int &inId)
Retrieves the dynamic entity type.
Dtk_NodeConnector::FirstRefBlockSituation_2
@ FirstRefBlockSituation_2
Definition: dtk_maindoc.hpp:1096
Dtk_NodeConnector::SubEntity::~SubEntity
~SubEntity()
Definition: dtk_maindoc.hpp:1214
Dtk_NodeConnector::AddSubEntities
Dtk_ErrorStatus AddSubEntities(const Dtk_tab< SubEntity > &inSubEntities)
Add a set of SubEntities - defined by their IDs and Types - to the SubEntities list.
Dtk_Node::GetNodeSubType
type_detk GetNodeSubType() const
Retrieves the Node SubType - if relevant - - read only -.
Dtk_NodeConnector::SubPMI
@ SubPMI
Definition: dtk_maindoc.hpp:1116
Dtk_NodeConnector::DtkDynamicCast
static Dtk_NodeConnector * DtkDynamicCast(Dtk_Object *s)
Performs a dynamic cast - doesn't need RTTI -.
Dtk_NodeConnector::AssociatedFeature
@ AssociatedFeature
Definition: dtk_maindoc.hpp:1115
Dtk_MainDoc::GetNumInstances
Dtk_Int32 GetNumInstances() const
Give number of InstanceComponents in the Dtk_MainDoc.
Dtk_DocElement::GetPreview
Dtk_PreviewPtr GetPreview() const
Retrieves the Dtk_DocElement Dtk_PreviewPtr - read only -.
Dtk_Component::ComponentTypeStringToInt
static Dtk_Int32 ComponentTypeStringToInt(const Dtk_string &name)
Definition: dtk_maindoc.hpp:605
BRepOccReaderModule
@ BRepOccReaderModule
Definition: dtk_maindoc.hpp:64
Dtk_Node::MeshType
@ MeshType
Definition: dtk_maindoc.hpp:250
Dtk_Node::GetDtk_BodyPtr
Dtk_BodyPtr GetDtk_BodyPtr()
Retrieves the Dtk_Node as a Dtk_BodyPtr - if exists -.
dtk_object.hpp
Dtk_MainDoc::GetAdditionalReferenceList
Dtk_ErrorStatus GetAdditionalReferenceList(Dtk_tab< Dtk_string > &outFileList) const
return list of additional reference files into MainDoc.
Dtk_API
Definition: dtk_api.hpp:75
Dtk_MainDoc::GetMissingComponentList
Dtk_ErrorStatus GetMissingComponentList(Dtk_tab< Dtk_string > &outFileList) const
return list of missing files into MainDoc.
ProeReaderModule
@ ProeReaderModule
Definition: dtk_maindoc.hpp:41
Dtk_Component::_Private
Dtk_Handle * _Private
Definition: dtk_maindoc.hpp:626
UgReaderModule
@ UgReaderModule
Definition: dtk_maindoc.hpp:34
Lava3mReaderModule
@ Lava3mReaderModule
Definition: dtk_maindoc.hpp:56
DwgReaderModule
@ DwgReaderModule
Definition: dtk_maindoc.hpp:61
Dtk_NodeConnector::GetAssociatedPathComponentID
const Dtk_tab< Dtk_ID > & GetAssociatedPathComponentID() const
Returns the Path Component ID referenced by the connector from Root to Target.
Dtk_Component::_ReleaseNodes
void _ReleaseNodes()
Dtk_NodeConnector::SubEntity::GetSubEntityId
Dtk_ID GetSubEntityId() const
Definition: dtk_maindoc.hpp:1216
Dtk_MainDoc::RootComponent
const Dtk_ComponentPtr & RootComponent() const
Retrieves the root Dtk_ComponentPtr of the Dtk_MainDoc.