DATAKIT SDK  V2026.2
util_ent_dtk.hpp
Go to the documentation of this file.
1 #ifndef _UTIL_ENT_DTK_HPP_
2 #define _UTIL_ENT_DTK_HPP_
3 
8 #include "util/error_dtk.hpp"
10 #include "util/util_ptr_dtk.hpp"
11 #include "util/util_stl_dtk.hpp"
12 #include "def/define.h"
13 #include <iosfwd>
14 #include "util/dtk_val.hpp"
15 #include "util/dtk/span.hpp"
16 
17 class Dtk_Entity;
18 class Dtk_material;
19 class Dtk_MetaData;
20 
21 template <class T> class Dtk_SmartPtr;
22 
24 
27  DTK_PT_CROSS, // a cross which looks like a "X"
28  DTK_PT_PLUS, // a cross which looks like a "+"
29  DTK_PT_CONCENTRIC, // an unfilled circle
30  DTK_PT_COINCIDENT, // two unfilled concentric circles
31  DTK_PT_FULLCIRCLE, // a filled circle
32  DTK_PT_FULLSQUARE, // a filled square
33  DTK_PT_STAR, // a star which is the union of a 2D marker CROSS, a 2D marker PLUS and a 2D marker DOT
34  DTK_PT_DOT, // a dot
35  DTK_PT_SMALLDOT, // a small dot whose size is one pixel
36  DTK_PT_BIGFULLCIRCLE, // a big filled circle
37  DTK_PT_BIGFULLSQUARE, // a big filled square
38  DTK_PT_SQUARE, // an unfilled square
39  DTK_PT_UP_TRIANGLE, // a triangle pointing up
40  DTK_PT_DIAMOND // a square rotated by 90 degrees
41 };
42 
43 //! \enum Dtk_FontLineType
44 //! \brief This is a set of line styles
47  // ________________________________
49  // _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
51  // ________ _ _ _________ _ _ _____
53  // ________ _ _________ _ _________
55  // ................................
57  // ___ ___ ___ ___ ___ ___ ___ ___
59  // ___ . ___ . ___ . ___ . ___ . __
61  // --'\,-----'\,-----'\,-----'\,---
64 };
65 
66 extern int dtk_AddColorInTable(const Dtk_RGB&);
67 
68 class Dtk_Object;
69 template <class T>
70 class Dtk_SmartPtr;
71 class Dtk_Val;
72 struct Dtk_string_compare;
73 class Dtk_Info;
74 
75 //class Dtk_Connector;
76 //class Dtk_ConnectorPart;
77 
78 //typedef Dtk_SmartPtr<Dtk_Connector> Dtk_ConnectorPtr;
79 //typedef Dtk_SmartPtr<Dtk_ConnectorPart> Dtk_ConnectorPartPtr;
80 //
81 //typedef Dtk_tab<Dtk_ConnectorPtr> Dtk_ConnectorTab;
82 //typedef Dtk_tab<Dtk_ConnectorPartPtr> Dtk_ConnectorPartTab;
83 
84 class Dtk_UUID;
85 class Dtk_pnt;
86 class Dtk_dir;
87 class Dtk_RGB;
88 class Dtk_string;
89 
90 
92 {
93  bool operator()(const Dtk_string& s1, const Dtk_string& s2) const
94  {
95  return s1.cmp(s2) < 0;
96  }
97 };
98 
100 {
101  bool operator()(const Dtk_string& s1, const Dtk_string& s2) const
102  {
103  return s1.icmp(s2) < 0;
104  }
105 };
106 //! \ingroup base_types
107 //! \class Dtk_Info
108 //! \brief This is the generic Info class.
109 //!
110 //! This class provides informations about Color/Layer/BlankedStatus/Name etc...
111 //! This class also provides additionnal information specific to the owning entity
112 //! \SmartPtr{Dtk_InfoPtr}
113 class Dtk_Info : public Dtk_Object
114 {
115 
116 protected:
117  enum { _typeID = DTK_TYPE_INFO };
118  struct Dtk_Handle; // Not defined here
119  Dtk_Handle *_Private; // Handle
121  void _init();
122  void _copy(const Dtk_Info& s);
123  void _reset();
125  Dtk_Info(const Dtk_Info& s);
127  friend class Dtk_SmartPtr<Dtk_Info>;
128  virtual Dtk_Object* Clone() { return new Dtk_Info(*this); }
129 public:
131  {
137  };
138 
139  //downcasting
140  int DtkDynamicType(const Dtk_Int32& inId);
142 
143  //! \CreateCopy{in}
145  //! \CreateMove{in}
147  //! \CreateBase
150 
153 
155  Dtk_Val const * FindAttribute(const Dtk_string& name) const; // If not found, returns nullptr.
156  Dtk_ErrorStatus ListAttributes(const Dtk_string& substring, Dtk_tab<Dtk_string>& tab_keys) const;
161 
176  Dtk_ErrorStatus SetColor( const int&R, const int&G, const int&B );// {return SetColorId( dtk_AddColorInTable( Dtk_RGB( R, G, B ) ) ); }
177  Dtk_ErrorStatus SetColor( const Dtk_RGB & inColor );// {return SetColorId( dtk_AddColorInTable( inColor ) ); }
178 
179 
185  Dtk_ErrorStatus SetCurveThickNess(const Dtk_Int32 &inCurveThickNess);
187  //! \brief Add a Dtk_LineTypeDefinition to Dtk_API and set it to current object.
189  //! \brief Set Dtk_LineTypeDefinition of current object via it's id in Dtk_API table.
190  Dtk_ErrorStatus SetCurveLineTypeDefinitionId( const Dtk_ID & inLineTypeDefinitionId );
191  //! \brief Set line type of current object thanks to Dtk_FontLineType enumeration.
192  Dtk_ErrorStatus SetCurveLineType(const Dtk_Int32 &inCurveLineType);
195  Dtk_ErrorStatus SetInfiniteGeometryFlag(const Dtk_Int32 &inInfiniteGeometryFlag);
196  Dtk_ErrorStatus SetRefEntityFlag( const Dtk_Int32 &inRefEntityFlag );
197  Dtk_ErrorStatus SetMandatoryFlag(const enum MandatoryFlag &inMandatoryFlag);
202 
203  //!\deprecated use AddRenderInfos and AddMaterialInfos methods instead
204  //SetAsDeprecated( "v2020.1", "use AddRenderInfos and AddMaterialInfos methods instead." )
206 
212 
213 
214  int GetActivationFlag() const;
215  int GetFlexibleFlag() const;
217  int GetDefaultChildIndex() const;
219  int GetUse() const;
220  int GetAddedItemFlag() const;
221  int GetHierarchy() const;
223  int GetFontId() const;
224  int GetFormFlag() const;
225  int GetMatId() const;
226  int GetSubordFlag() const;
227  int GetId() const;
228  int GetViewId() const;
229 
230  //! \brief Retrieves the layers in which the entity is assigned.
231  //! \return The list of layer numbers.
232  //! \remark The list can be empty.
233  //! \sa AddLayer(const Dtk_Int32 & inLayer);
235 
236  //! \brief Retrieves the entity color as Dtk_RGBA values.
237  //! \return the Dtk_RGBA value is succeeds. Dtk_RGB(-1,-1,-1) otherwise - no color found for example -.
238  //!
239  //! \b Sample:
240  //! \code
241  //! //Get Dtk_InfoPtr class
242  //! Dtk_InfoPtr infos = inNode->GetInfos(); //inNode is a Dtk_Node in this sample
243  //! Dtk_RGB MyColor = infos->GetColor(); //returned RGB is (-1,-1,-1,-1)
244  //! infos->SetColor( Dtk_RGB( 128, 50, 255, 255 ) ); //Red=128 / Green=50 / Blue=255 / Alpha = 255
245  //! MyColor = infos->GetColor(); // no RGB is (128,50,255,255)
246  //! \endcode
247  //! \sa SetColor(const Dtk_RGB & inColor)
248  //! \sa SetColor(const int&R,const int&G,const int&B)
249  Dtk_RGB GetColor() const;
250  //!\brief Retrieves the entity color index in Dtk_API color table.
251  //! \return the color index
252  int GetColorId() const;
253 
254  //! \brief Retrieves the entity name.
255  //! \return the name if succeeds, empty string otherwise.
256  //! \sa SetName( const Dtk_string &inName )
258  //!\brief Retrieves the entity persistent name.
259  //!\return the persistent name if succeeds, empty string otherwise.
261 
262  //! \brief Retrieves the entity layer.
263  //! \return The layer ID if succeed or -1 otherwise - If Undefined or no layer set -.
264  //! \sa SetLayer(const Dtk_Int32 & inLayer);
265  int GetLayer() const;
266 
267  //! \brief Retrieves the entity Blanked Status.
268  //! \return -1 If Undefined - or no blanked status set - .
269  //! \return 0 If Visible.
270  //! \return 1 If Invisible
271  //! \return 2 If Construction Geometry
272  //! \sa SetBlankedStatus(const int &inBlankedStatus)
273  int GetBlankedStatus() const;
274 
275 
276  //! \brief Retrieves if all wireframe is displayed with same width
277  //! \return The curve width in millimeter if succeeds, 0.0 otherwise.
278  //! \sa SetDisplayLineWidth( const Dtk_Double64 inDisplayLineWidth )
280 
281  //! \deprecated Use GetCurveThickNessInMM() const method instead.
282  //SetAsDeprecated( "v2020.1", "use GetCurveThickNessInMM() methods instead." )
283  int GetCurveThickNess() const;
284 
285  //! \brief Retrieves the curve thickness - if exists and relevant -.
286  //! \return The curve thickness in millimeters if succeeds, -1.0 otherwise.
287  //! \sa SetCurveThickNessInMM( const Dtk_Double64 inCurveThickNessInMM )
289 
290  //! \brief Retrieves the curve LineType - for curve entities -
291  //! \return The curve LineType - Dtk_FontLineType::DTK_SOLIDLINE if not type set -.
293 
294  //! \brief Retrieves the definition of the curve LineType - for curve entities -
295  //! \return null pointer if not set.
297 
298  //! \brief Retrieves the Id of Dtk_LineTypeDefinition of the entity in The Dtk_API table.
299  //! \return The id or 0 if None.
301 
302  //! \brief Retrieves the Symbol Type - for point only -.
303  //! \return The Symbol Type - Dtk_PointType::DTK_PT_UNSPECIFIED if no type set -.
305 
306  //! \brief Retrieves the Mandatory Flag
307  //! \return Mandatory flag
308  enum MandatoryFlag GetMandatoryFlag() const;
309 
310  //!\brief Retrieves the Flag for Infinite Geometry
311  //! \return 1 if infinite geometr, 0 otherwise.
313  //! \brief Retrieves the Flag for Reference Entity (Reference planes , axis, point
314  //! \return 1 if reference entity, 0 otherwise.
315  int GetRefEntityFlag() const;
316  //! \brief Retrieves the entity UniqueID if any.
317  Dtk_UUID GetUuid() const;
319 
320  //!\deprecated use GetRenderInfos and GetPhysicalMaterialInfos methods instead
321  //SetAsDeprecated( "v2020.1", "use GetRenderInfos and GetPhysicalMaterialInfos methods instead." )
323 
324  //! \brief Retrieves the entity RenderInfos of the entity.
325  //! \return the Dtk_RenderInfosPtr or NULL if None.
326  //! \sa GetRenderInfos()
328 
329  //! \brief Retrieves the Id of RenderInfos of the entity in The Dtk_API table.
330  //! \return the id or 0 if None.
331  //! \sa GetRenderInfosId()
333 
334  //! \brief Retrieves the entity MaterialInfos.
335  //! \return the Dtk_MaterialInfosPtr if succeeds or NULL otherwise.
337 
338  //! \brief Retrieves the Id of MaterialInfos of the entity in The Dtk_API table.
339  //! \return the id or 0 if None.
341 
342  //! \brief Retrieves the OccurrenceData flag.
343  //! \return true if the instance references a modified version of the prototype.
344  bool GetOccurrenceDataFlag() const;
345 
348 
349 
350  //! \deprecated Use GetMetaData() const method instead.
351  SetAsDeprecated( "v2026.2", "use GetMetaData() methods instead." )
352  Dtk_ErrorStatus GetProperties(Dtk_tab<Dtk_PropertiesPtr>& outArray) const;
356 
357  //! \brief Retrieves up to date state of current object.
358  //! \return -1 if unknown, DTK_TRUE if object is up to date, DTK_FALSE if not up to date. Default is unknown.
360  //! \brief Set if current object is up to date or not.
361  //! \param isUpToDate DTK_TRUE if object is up to date, DTK_FALSE if not. Anything else will set state to unknown.
362  void SetIsUpToDate( const Dtk_bool isUpToDate );
363 
364 
365  virtual Dtk_Size_t GetSize() const;
366  virtual Dtk_ErrorStatus _Store(void*);
367 };
368 
369 
370 class Dtk_Entity : public Dtk_Object
371 {
372 protected:
373  struct Dtk_Handle; // Not defined here
374  Dtk_Handle *_Private; // Handle
376  void _init();
377  void _copy(const Dtk_Entity& s);
378  void _reset();
379 
380  virtual Dtk_Object* Clone() = 0;
381  friend class Dtk_SmartPtr<Dtk_Entity>;
382 public:
388 
389  virtual ~Dtk_Entity();
390  //! \brief Get Internal UniqueID
391  //! \return InternalID
392  const Dtk_ID& GetID() const;
393 
394  virtual enum type_detk get_type_detk() const=0;
395 
396  //downcasting
397  int DtkDynamicType(const int& inId);
399 
402  //virtual Dtk_status Transform(const Dtk_transfo& inTransfo)=0;
404 
405  virtual Dtk_ErrorStatus _Store(void*);
406  virtual Dtk_Size_t GetSize() const;
407 
408  virtual void PrepareTransfo ();
409 };
410 
411 /////////////////////////////////////////
412 
413 class Dtk_LayerInfosSet;
414 class Dtk_ColorInfosSet;
416 class Dtk_AxisSystem;
417 class Dtk_ModelDisplay;
418 class Dtk_Constraint;
427 
428 
429 
430 
431 //! \class Dtk_LayerFilterInfos
432 //! \brief This class is used by Dtk_LayerInfosSet to represent a layer filter : its name, description, and selected layers of the set it is contained in.
433 //! \remark The layer indexes used by Dtk_LayerFilterInfos are those of the Dtk_LayerInfosSet it is contained in.
434 //! \see Dtk_LayerInfosSet::CreateLayerFilterInfos
436 {
437 protected:
438  struct Dtk_Handle; // Not defined here
439  Dtk_Handle *_Private; // Handle
441 
442  Dtk_LayerFilterInfos(const Dtk_Size_t inNumLayers, Dtk_string inName = L"", Dtk_string inDescription = L"", const Dtk_bool inAreLayersActivatedByDefault = DTK_FALSE);
443 
444  //! \CopyConstructor{s}
446  //! \MoveConstructor{s}
449 
450  friend class Dtk_SmartPtr< Dtk_LayerFilterInfos >;
451  friend class Dtk_LayerInfosSet;
452 public:
453  //! \DtkDynamicType
455 
456  //! \DtkDynamicCast
458 
459  //! \return The type of the entity type - DTK_TYPE_LAYER_FILTER_INFOS -
461 
462  //! \brief Selects a given layer in the layer filter.
463  //! \param inLayerIndex the layer index to be selected.
464  //! \return dtkNoError if the layer has been selected
465  //! \return dtkErrorOutOfRange if the index is out of layer set range.
467 
468  //! \brief Selects given layers in the layer filter.
469  //! \param inLayerIndexes An array of layer indexes to be selected.
470  //! \return dtkNoError if all the desired layers has been selected.
471  //! \return dtkErrorOutOfRange if one of the indices is out of layer set range. Valid indices will still be processed.
473 
474  //! \brief Unselects the given layer in the layer filter.
475  //! \param inLayerIndex the layer index to be unselected.
476  //! \return dtkNoError if the layer has been unselected.
477  //! \return dtkErrorOutOfRange if the index is out of layer set range.
479 
480  //! \brief Unselects the given layers in the layer filter.
481  //! \param inLayerIndexes An array of layer indexes to be unselected.
482  //! \return dtkNoError if all the desired layers has been unselected.
483  //! \return dtkErrorOutOfRange if one of the indices is out of layer set range. Valid indices will still be processed.
485 
486 
487  //! \brief Tells if the layer is selected or not giving its index.
488  //! \param inLayerIndex the layer index in Dtk_LayerInfosSet layers.
489  //! \return DTK_FALSE if layer is not selected, DTK_TRUE otherwise.
490  Dtk_bool IsLayerSelected(const Dtk_Size_t inLayerIndex ) const;
491 
492  //! \brief Retrieves all the selected layers into the layer filter.
493  //! \param outSelectedLayers the selected layer indexes.
494  void GetSelectedLayers(Dtk_tab< Dtk_Size_t >& outSelectedLayerIndexes) const;
495 
496  //! \brief Retrieves layer filter name.
497  //! \param outLayerFilterName the layer filter name.
498  void GetName(Dtk_string& outLayerFilterName) const;
499 
500  //! \brief Retrieves layer filter description.
501  //! \param outLayerFilterDescription the layer filter description.
502  void GetDescription(Dtk_string& outLayerFilterDescription) const;
503 };
504 
505 //! \class Dtk_LayerInfosSet
506 //! \brief This class represents a set of layer information, such as their name and identifier, as well as a list of layer filters. \n
507 //! \details The set allows to extend the definition of legacy layers, that previously were only represented by an identifier. It lists all layers used in a given context (Dtk_Component), and allows to assign a name to each of them.\n
508 //! \details It also allows to define one of the layer as being the default one (note that this can be the same concept as the current one, depending on the format).\n
509 //! \details Creation of layer filters are also done through this set, representing a group of specific layers. \n
510 //! \details One of the filter can be defined as being the default one, similarly to individual layer.
511 //! \see Dtk_LayerFilterInfos for more information about layer filters.
512 //! \see \ref attribsample_layerinfoset for a sample on how to use it.
513 //! \SmartPtr{Dtk_LayerInfosSetPtr}
515 {
516 public:
517 
518  struct Layer
519  {
520  enum class Status
521  {
522  Visible = 1,//Describes the layer elements visibility : if set, the elements in the layer are visible, otherwise they are invisible.
523  Selectable = 2,//Describes the layer elements selectability: if set, the elements in the layer are selectable, otherwise they aren't.
524  };
525 
526  protected:
531 
532  public:
533 
534  Layer() : m_Name(), m_ID( static_cast< Dtk_ID >( -1 ) ), m_FatherID( static_cast< Dtk_ID >( -1 ) ), m_Status( 0 )
535  {
536  FlagAs( Status::Visible );
537  FlagAs( Status::Selectable );
538  }
539  Layer( Dtk_ID id, Dtk_string name = Dtk_string(), Dtk_ID fatherID = static_cast< Dtk_ID >( -1 ) ) : m_Name( std::move( name ) ), m_ID( id ), m_FatherID( fatherID ), m_Status( 0 )
540  {
541  FlagAs( Status::Visible );
542  FlagAs( Status::Selectable );
543  }
544  Dtk_string const& GetName() const { return m_Name; };
545  Dtk_ID GetID() const { return m_ID; };
546  Dtk_ID GetFatherID() const { return m_FatherID; };
547  bool IsFlaggedAs( Status in ) const { return m_Status & 1 << static_cast< Dtk_UShort16 >( in ); }
548  void FlagAs( Status in ) { m_Status |= 1 << static_cast< Dtk_UShort16 >( in ); }
549  void Unflag( Status in ) { m_Status &= ~( 1 << static_cast< Dtk_UShort16 >( in ) ); }
550 
551  friend class Dtk_LayerInfosSet;
552 
553  };
554 
555 protected:
556  struct Dtk_Handle; // Not defined here
557  Dtk_Handle *_Private; // Handle
559  //! \sa Create(const Dtk_Size_t )
561 
562  //! \CopyConstructor{s}
564  //! \MoveConstructor{s}
566 
567  virtual Dtk_Object* Clone() { return new Dtk_LayerInfosSet( *this ); }
568 
569  //! \BaseDestructor
571 private:
572  friend class Dtk_SmartPtr<Dtk_LayerInfosSet>;
573 public:
574  //! \DtkDynamicType
576 
577  //! \DtkDynamicCast
579 
580  //! \return The type of the entity type - DTK_TYPE_LAYER_INFOS_SET -
582 
583  //! \brief Calls a constructor to allocate a new object.
584  //! \param[in] inNumLayers the number of desired layers.
585  //! \details The desired number of layer will be added in the set using AddLayer( Layer ). Layers identifier will be set as their index in the set.
586  //! \deprecated
587  SetAsDeprecated( "v2026.2", "Use Create then Dtk_LayerInfoSet::AddLayers instead." )
588  static Dtk_LayerInfosSetPtr Create( const Dtk_Size_t inNumLayers );
589 
590  //! \CreateBase
591  static Dtk_LayerInfosSetPtr Create();
592 
593  //! \brief Creates a layer filter.
594  //! \param[in] inName the layer filter name - Empty name by default -.
595  //! \param[in] inDescription the layer filter description - Empty name by default -.
596  //! \param[in] inAreLayersActivatedByDefault The default value of the layer selection. DTK_TRUE means that all layers are selected. DTK_FALSE means that no layer is selected - DTK_FALSE by default -.
597  //! \param[in] IsDefaultLayerFilter Tells if the new layer filter is the default one - DTK_FALSE by default -.
598  //! \return the newly created layer filter.
599  //! \remark The newly created layer filter is automatically stored into the Dtk_LayerInfosSet.
600  Dtk_LayerFilterInfosPtr CreateLayerFilterInfos( Dtk_string inName = L"", Dtk_string inDescription = L"", const Dtk_bool inAreLayersSelectedByDefault = DTK_FALSE, const Dtk_bool IsDefaultLayerFilter = DTK_FALSE );
601 
602  //! \brief Retrieves the number of layers.
603  //! \return the number of layers.
604  Dtk_Size_t GetNumLayers() const;
605 
606  //! \brief Retrieves the number of layer filters.
607  //! \return the number of layer filters.
608  Dtk_Size_t GetNumLayerFilters() const;
609 
610  //! \brief Sets the layer name giving its index.
611  //! \param[in] inIndex the layer index.
612  //! \param[in] inLayerName the layer name.
613  //! \return dtkNoError if success.
614  //! \return dtkErrorOutOfRange if bad layer index.
615  //! \deprecated
616  SetAsDeprecated( "v2026.2", "Use AddLayer instead." )
617  Dtk_ErrorStatus SetLayerName(const Dtk_Size_t inIndex, const Dtk_string& inLayerName);
618 
619  //! \brief Gets the LayerName giving its index.
620  //! \param[in] inLayerPos the layer index.
621  //! \param[out] outLayerName the layer name or empty string if any error.
622  //! \return dtkNoError if success.
623  //! \return dtkErrorOutOfRange if bad layer index.
624  //! \return dtkErrorNullPointer if no layer name.
625  //! \deprecated
626  SetAsDeprecated( "v2026.2", "Use GetLayers instead." )
627  Dtk_ErrorStatus GetLayerName( const Dtk_Size_t inIndex, Dtk_string& outLayerName ) const;
628 
629  //! \brief Gets the LayerName giving the ID found by infos->GetLayer().
630  //! \param[in] inLayerID the layer ID.
631  //! \param[out] outLayerName the layer name or empty string if any error.
632  //! \return dtkNoError if success.
633  //! \return dtkErrorOutOfRange if bad layer ID.
634  //! \return dtkErrorNullPointer if no layer name.
635  //! \deprecated
636  SetAsDeprecated( "v2026.2", "Use GetLayerByID instead." )
637  Dtk_ErrorStatus GetLayerNameById( const Dtk_ID inLayerID, Dtk_string& outLayerName ) const;
638 
639  //! \brief Sets the default layer index.
640  //! \param inDefaultLayer the layer index.
641  //! \return dtkNoError if success.
642  //! \return dtkErrorOutOfRange if bad layer index.
643  //! \deprecated
644  SetAsDeprecated( "v2026.2", "Use SetCurrentLayer instead." )
645  Dtk_ErrorStatus SetDefaultLayer(const Dtk_Size_t inDefaultLayerIndex);
646 
647  //! \brief Sets the current layer index.
648  //! \param inCurrentLayerIndex the layer index.
649  //! \return dtkNoError if success.
650  //! \return dtkErrorOutOfRange if bad layer index.
651  Dtk_ErrorStatus SetCurrentLayer(const Dtk_Size_t inCurrentLayerIndex);
652 
653  //! \brief Gets the default layer index.
654  //! \param outDefaultLayer the layer index or -1 if any error.
655  //! \return dtkNoError if success.
656  //! \return dtkErrorOutOfRange if no current layer.
657  //! \deprecated
658  SetAsDeprecated( "v2026.2", "Use GetCurrentLayer instead.")
659  Dtk_ErrorStatus GetDefaultLayer(Dtk_Size_t& outDefaultLayerIndex) const;
660 
661  //! \brief Gets the current layer index.
662  //! \param outCurrentLayerIndex the layer index or -1 if any error.
663  //! \return dtkNoError if success.
664  //! \return dtkErrorOutOfRange if no current layer.
665  Dtk_ErrorStatus GetCurrentLayer(Dtk_Size_t& outCurrentLayerIndex) const;
666 
667  //! \brief Gets the default layer filter index.
668  //! \param outDefaultLayerFilterIndex the layer filter index or -1 if any error.
669  //! \return dtkNoError if success.
670  //! \return dtkErrorOutOfRange if no default layer filter.
671  Dtk_ErrorStatus GetDefaultLayerFilter(Dtk_Size_t& outDefaultLayerFilterIndex) const;
672 
673  //! \brief Gets a layer filter giving its index.
674  //! \param inLayerFilterIndex the layer filter index.
675  //! \return the asked layer filter if success or a NULL Dtk_LayerFilterInfosPtr if any error.
676  Dtk_LayerFilterInfosPtr GetLayerFilterByPos(const Dtk_Size_t inLayerFilterIndex) const;
677 
678  //! \brief Sets the LayerID giving its index.
679  //! \param[in] inLayerPos the layer index.
680  //! \param[in] inLayerID the layer id.
681  //! \return dtkNoError if success.
682  //! \return dtkErrorOutOfRange if bad layer index.
683  //! \deprecated
684  SetAsDeprecated( "v2026.2", "Use GetLayers instead." )
685  Dtk_ErrorStatus SetLayerID(const Dtk_Size_t inLayerIndex, const Dtk_ID& inLayerID);
686 
687  //! \brief Gets the LayerID giving its index.
688  //! \param[in] inLayerPos the layer index.
689  //! \param[out] outLayerID the layer id or inLayerPos if not given.
690  //! \return dtkNoError if success.
691  //! \return dtkErrorOutOfRange if bad layer index.
692  //! \deprecated
693  SetAsDeprecated( "v2026.2", "Use GetLayers instead.")
694  Dtk_ErrorStatus GetLayerID(const Dtk_Size_t inLayerIndex, Dtk_ID& outLayerID) const;
695 
696  //! \brief Adds a layer in the set.
697  //! \param[in] inLayer the layer to be added.
698  //! \details The Dtk_LayerInfoSet expects layer being added to have an initialized identifier ( with a value different from static_cast< Dtk_ID >( -1 ) ).
699  //! If the layer identifier is uninitialized, this function will set the identifier as being the layer index in the layer set.
700  //! \return dtkNoError if success.
702 
703  //! \brief Retrieves a layer in the set using its identifier.
704  //! \param[in] inLayerID the layer identifier.
705  //! \param[out] out the layer with the provided identifier if found.
706  //! \return dtkNoError if success.
707  //! \return dtkErrorOutOfRange if layer identifier was not found in the set.
708  Dtk_ErrorStatus GetLayerByID( Dtk_ID inLayerID, Layer& out );
709 
710  //! \brief Retrieves layers in the set as a dtk::Span.
711  //! \return the layers in the set as a dtk::Span.
712  dtk::Span<Layer const> GetLayers() const;
713 
714  //! \brief Retrieves the identifiers of layers in the set that are flagged a certain way.
715  //! \param[in] inStatus the flag to check to retrieve layers identifiers.
716  //! \return the identifiers of layers in the set that are flagged a certain way.
717  Dtk_tab< Dtk_ID > GetLayersFlaggedAs( Dtk_LayerInfosSet::Layer::Status inStatus ) const;
718 
719  friend class Dtk_LayerFilterInfos;
720 };
721 
722 
723 //! \class Dtk_ColorInfosSet
724 //! \brief This is the Color Info Set class. This is the read color definition Class.\n
725 //! It gathers all information about colors in the component.
726 //! \SmartPtr{Dtk_ColorInfosSetPtr}
728 {
729 public:
730 protected:
731  struct Dtk_Handle; // Not defined here
732  Dtk_Handle *_Private; // Handle
734  //! \sa Create(const Dtk_Size_t)
735  Dtk_ColorInfosSet(const Dtk_Size_t inNumColors);
736 
737  //! \sa Create(const Dtk_ColorInfosSet&)
739  virtual Dtk_Object* Clone() { return new Dtk_ColorInfosSet(*this); }
740 
741  //! \BaseDestructor
743 private:
744  void _Init(const Dtk_Size_t inNumColors);
745  void _Copy(const Dtk_ColorInfosSet &s);
746  void _Reset();
747  friend class Dtk_SmartPtr<Dtk_ColorInfosSet>;
748 public:
749  //! \DtkDynamicType
751 
752  //! \DtkDynamicCast
754 
755  //! \return The type of the entity type - DTK_TYPE_COLOR_INFOS_SET -
757 
758  //! \brief Calls a constructor to allocate a new object.
759  static Dtk_ColorInfosSetPtr Create(const Dtk_Size_t inNumColors);
760 
761  //! \brief Retrieves the number of colors.
762  //! \return the number of colors.
764 
765  //! \brief Add Color definition.
766  //! \param inColorReadId the color number.
767  //! \param inColorName the color name.
768  //! \param inColorDef the color RGB definition.
769  //! \return dtkNoError if success.
770  Dtk_Size_t AddColor(const Dtk_ID inColorReadId, const Dtk_string& inColorName,const Dtk_RGB& inColorDef);
771 
772 
773  //! \brief Sets the Color Name giving its number.
774  //! \param inColorPos the color number.
775  //! \param inColorName the color name.
776  //! \return dtkNoError if success.
777  //! \return dtkErrorOutOfRange if bad color number.
778  Dtk_ErrorStatus SetColorName(const Dtk_Size_t inColorPos, const Dtk_string& inColorName);
779 
780  //! \brief Gets the Color Name giving its number.
781  //! \param inColorPos the color number.
782  //! \param inColorName the color name or empty string if any error.
783  //! \return dtkNoError if success.
784  //! \return dtkErrorOutOfRange if bad color number.
785  //! \return dtkErrorNullPointer if no color name.
786  Dtk_ErrorStatus GetColorName(const Dtk_Size_t inColorPos, Dtk_string& outColorName) const;
787 
788  //! \brief Gets the Color Name giving the ID found iby infos->GetColorID().
789  //! \param inColorReadId the color ID.
790  //! \param outColorName the color name or empty string if any error.
791  //! \return dtkNoError if success.
792  //! \return dtkErrorOutOfRange if bad color ID.
793  //! \return dtkErrorNullPointer if no color name.
794  Dtk_ErrorStatus GetColorNameById(const Dtk_ID inColorReadId, Dtk_string& outColorName) const;
795 
796  //! \brief Sets the default color number.
797  //! \param inDefaultColor the color number.
798  //! \return dtkNoError if success.
799  //! \return dtkErrorOutOfRange if bad color number.
801 
802  //! \brief Gets the default color number.
803  //! \param outDefaultColor the color number or -1 if any error.
804  //! \return dtkNoError if success.
805  //! \return dtkErrorOutOfRange if no default color.
806  Dtk_ErrorStatus GetDefaultColor(Dtk_Int32& outDefaultColor) const;
807 
808  //! \brief Sets the ColorID giving its number.
809  //! \param inColorPos the color number.
810  //! \param inColorReadID the color id.
811  //! \return dtkNoError if success.
812  //! \return dtkErrorOutOfRange if bad color number.
813  Dtk_ErrorStatus SetColorID(const Dtk_Size_t inColorPos, const Dtk_ID& inColorReadID);
814 
815  //! \brief Gets the ColorID giving its number.
816  //! \param inColorPos the color number.
817  //! \param outColorReadID the color id
818  //! \return dtkNoError if success.
819  //! \return dtkErrorOutOfRange if bad color number.
820  Dtk_ErrorStatus GetColorID(const Dtk_Size_t inColorPos, Dtk_ID& outColorReadID) const;
821 
822  //! \brief Gets the ColorID giving its number.
823  //! \param inColorPos the color number.
824  //! \param outColorDef the color id
825  //! \return dtkNoError if success.
826  //! \return dtkErrorOutOfRange if bad color number.
827  Dtk_ErrorStatus GetColorDefinition(const Dtk_Size_t inColorPos, Dtk_RGB& outColorDef) const;
828 
829 };
830 
831 
832 class Dtk_Preview;
834 
835 //! \ingroup base_types
836 //! \class Dtk_Preview
837 //! \brief This is the Dtk_Preview class.
838 //! \brief A Dtk_Preview contains Stream representing picture data
839 //! This class lets you use Dtk_Preview.
840 //! \SmartPtr{Dtk_PreviewPtr}
841 class Dtk_Preview: public Dtk_Object
842 {
843 public:
844  //downcasting
845  int DtkDynamicType(const int& inId);
847 
848  //constructors
849  //! \CreateCopy{in}
850  static Dtk_PreviewPtr Create(const Dtk_Preview& in);
851  //! \brief Calls full featured constructor to allocate a new object.
852  static Dtk_PreviewPtr Create(const char* inStream,const Dtk_Int32 inSizeStream);
853  char *GetStream();
856  void SetType(preview_type_detk inPreviewType);
857 
858 protected:
860  Dtk_Preview( Dtk_Preview const& in );
861  //! \sa Create(const char*,const Dtk_Int32 )
862  Dtk_Preview(const char* inStream,const Dtk_Int32 inSizeStream);
863  virtual ~Dtk_Preview();
864  struct Dtk_Handle;
865  Dtk_Handle *_Private;
866  friend class Dtk_SmartPtr<Dtk_Preview>;
867 };
868 
869 
870 //! \ingroup base_types
871 //! \class Dtk_AxisSystem
872 //! \brief This is the Dtk_AxisSystem class.
873 //! \brief A Dtk_AxisSystem contains the AxisSystem definition which is defined by its name, status and a matrix
874 //!
875 //! This class lets you use Dtk_AxisSystem.
876 //! \SmartPtr{Dtk_AxisSystemPtr}
878 {
879 public:
880 
883 
884 
885  //! \brief Get the Name of the AxisSystem.
886  //! \return the Name of this AxisSystem .
887  //!
889  //! \brief Set the Name of the AxisSystem.
890  //! \return the Name of this AxisSystem .
891  //!
892  void SetName(const Dtk_string& in) ;
893 
894  //! \brief Get the Matrix of the AxisSystem.
895  //! \return the Matrix of this AxisSystem .
896  const Dtk_transfo& GetMatrix() const;
897 
898  //! \brief Get the Matrix of the AxisSystem.
899  //! \param[in] in : Matrix of the AxisSystem
900  //! \return the Matrix of this AxisSystem .
901  //!
902  void SetMatrix(const Dtk_transfo& in) ;
903 
904  //! \brief Get the visibility status.
905  //! \return DTK_TRUE if it is visible .
906  //!
907  int GetIsVisible() const;
908  //! \brief Set the visibility status.
909  //! \return DTK_TRUE if it is visible .
910  //!
911  void SetIsVisible() ;
912 
913  //! \brief Get the hidden status.
914  //! \return DTK_TRUE if it is hidden .
915  //!
916  int GetIsHidden() const;
917  //! \brief Set the hidden status.
918  //! \return DTK_TRUE if it is hidden .
919  //!
920  void SetIsHidden() ;
921 
922  //! \brief Get the default status.
923  //! \return DTK_TRUE if it is Default Axis .
924  //!
926  //! \brief Set the default status.
927  //! \return DTK_TRUE if it is hidden .
928  //!
929  void SetDefaultStatus(Dtk_bool inDefaultStatus) ;
930 
931 
932 
933  //! \return The type of the entity type - DTK_TYPE_AXIS_SYSTEM -
935 
936  //! \CreateBase
938  virtual void conv_ptr(Dtk_AxisSystem ** s){*s = this;}
939  int DtkDynamicType(const int& inId);
941 
942  //! \Transform{inTransfo}
944 
945 protected:
947  virtual ~Dtk_AxisSystem();
948  struct Dtk_Handle;
949  Dtk_Handle *_Private;
950  void _Init();
951  void _copy(const Dtk_AxisSystem& s);
952  void _reset();
953  inline virtual Dtk_Object* Clone() { return new Dtk_AxisSystem(*this); }
954  friend class Dtk_SmartPtr<Dtk_AxisSystem>;
955 
956 };
957 //! \ingroup base_types
958 //! \class Dtk_ModelDisplay
959 //! \brief This is the Dtk_ModelDisplay class.
960 //! \SmartPtr{Dtk_ModelDisplayPtr}
962 {
963 protected:
964  struct Dtk_Handle; // Not defined here
965  Dtk_Handle *_Private; // Handle
967 
968  //! \sa Create()
970 
972 
973  //! \sa Create(const Dtk_CameraPtr& , const Dtk_EntityPtr&, const Dtk_bool)
975  const Dtk_CameraPtr& inCamera,
977  const Dtk_bool inIsActivated);
978 
979  inline virtual Dtk_Object* Clone() { return new Dtk_ModelDisplay(*this); }
980 
981  //! \BaseDestructor
983 private:
984  void _Init();
985  void _Copy(const Dtk_ModelDisplay &s);
986  void _Reset();
987  friend class Dtk_SmartPtr<Dtk_ModelDisplay>;
988 
989 public:
991  {
992  rendering_mode_shaded_only=0,
1000  rendering_mode_unknown
1001  };
1003  SectionPlane = 0,
1008  SectionUndefined
1009  };
1010 
1011  //! \DtkDynamicType
1013 
1014  //! \DtkDynamicCast
1016 
1017  //! \return The type of the entity type - DTK_TYPE_MODEL_DISPLAY -
1019 
1020  //! \brief Calls full featured constructor to allocate a new object.
1021  //! \param inCamera The included Dtk_Camera.
1022  //! \param inClipping The included clipping entity.
1023  //! \param inIsActivated Tells if the Capture is activated or not.
1024  //! \return The created Dtk_ModelDisplayPtr
1026  const Dtk_CameraPtr& inCamera,
1028  const Dtk_bool inIsActivated);
1029 
1030  //! \brief Retrieves the Dtk_ModelDisplay camera - read only -.
1031  //! \return The camera.
1032  const Dtk_CameraPtr& GetCamera() const;
1033 
1034  //! \brief Retrieves the Dtk_ModelDisplay clipping entity - read only -.
1035  //! \return The clipping entity.
1037 
1038  //! \brief Tells if the Dtk_ModelDisplay is activated or not - read only -.
1039  //! \return DTK_TRUE if capture is visible when opening the document (several can be activated ) DTK_FALSE else.
1041 
1042  //! \brief Set the rendering mode shaded , shaded with edge , ...
1044 
1045  //! \brief Get the rendering mode shaded , shaded with edge , ...
1047 
1048  //! \brief Set if this Dtk_ModelDisplay is a Standard View other case it is a user defined view
1049  void SetIsStandardView() const;
1050 
1051  //! \brief Get DTK_TRUE if this Dtk_ModelDisplay is a Standard View , DTK_FALSE if it is a user defined view .
1053 
1054  //! \brief Set the type of the section on the Dtk_ModelDisplay.
1055  //! \param inSectionType the section type.
1056  //! \param inIsLocked if section distance is locked.
1057  //! \param inThickness in case of a SectionParallelePlane, define the distance between the two parallel plane.
1058  void SetSectionInformation(const SectionTypeEnum& inSectionType, const Dtk_Int32& inIsLocked = DTK_FALSE, const Dtk_Double64& inThickness=0.0) const;
1059 
1060  //! \brief Get the type of the Section on the Dtk_Capture.
1061  //! \brief
1062  //! \brief SectionPlane : clipping by one plane , GetClippingEntity() return a Dtk_PlaneSurfacePtr .
1063  //! \image html SectionPlane.png
1064  //! \brief
1065  //! \brief SectionParallelePlane : clipping by two plane ,first one , GetClippingEntity() return a Dtk_PlaneSurfacePtr ,and the second is defined by a thickness from this plane.
1066  //! \image html SectionParallelePlane.png
1067  //! \brief
1068  //! \brief SectionBox : clipping by a box defined by six planes , GetClippingEntity() return a Dtk_BodyPtr with six plane surface.
1069  //! \image html SectionBox.png
1070  //! \brief
1071  //! \brief SectionBox : clipping by a Dtk_BodyPtr , GetClippingEntity() return a Dtk_BodyPtr .
1072  //! \image html SectionBody.png
1073  //! \param outSectionType the section type , outIsLocked if Section distance is locked and outThickness for SectionParallelePlane.
1074  void GetSectionInformation(SectionTypeEnum& outSectionType, Dtk_Int32& outIsLocked, Dtk_Double64& outThickness) const;
1075 
1076  //! \Transform{inTransfo}
1078 
1079  //! \brief Visible layer for Dtk_ModelDisplay
1080  void GetVisibleLayers( Dtk_tab<Dtk_Int32> &outVisibleLayers )const;
1081  void SetVisibleLayers( const Dtk_tab<Dtk_Int32> & inVisibleLayers );
1082 
1083 };
1084 
1085 
1086 //! \ingroup base_types
1087 //! \class Dtk_ConstraintReference
1088 //! \brief This is the Dtk_ConstraintReference class.
1089 //! \brief A Dtk_ConstraintReference contains the AxisSystem definition which defines by its Name, statut and the Matrix
1090 //!
1091 //! This class lets you use Dtk_ConstraintReference.
1092 //! \SmartPtr{Dtk_ConstraintReferencePtr}
1094 {
1095 public:
1096 
1099 
1100 
1101  //! \brief Get the Dtk_NodeConnectorPtr of the ConstraintReference .
1102  //! \return the Dtk_NodeConnectorPtr of this ConstraintReference .
1103  //!
1105  //! \brief Set the type of the Constraint .
1106  //!
1108 
1109 
1110  //! \brief Get the Position of the ConstraintReference .
1111  //! \return the Position of this ConstraintReference .
1112  //!
1113  const Dtk_pnt& GetPosition(Dtk_bool & outHasPosition) const;
1114  //! \brief Set the Position of the ConstraintReference .
1115  //!
1116  void SetPosition(const Dtk_pnt& in);
1117 
1118 
1119  //! \return The type of the entity type - DTK_TYPE_CONSTRAINT_REFERENCE -
1121 
1122  //! \CreateBase
1124  virtual void conv_ptr(Dtk_ConstraintReference ** s) { *s = this; }
1125  int DtkDynamicType(const int& inId);
1127 
1128  //! \Transform{inTransfo}
1130 
1131 protected:
1134  struct Dtk_Handle;
1135  Dtk_Handle *_Private;
1136  void _Init();
1138  void _Reset();
1139  inline virtual Dtk_Object* Clone() { return new Dtk_ConstraintReference(*this); }
1140  friend class Dtk_SmartPtr<Dtk_ConstraintReference>;
1141 
1142 };
1143 
1144 
1145 //! \ingroup base_types
1146 //! \class Dtk_Constraint
1147 //! \brief This is the Dtk_Constraint class.
1148 //! \brief A Dtk_Constraint contains the AxisSystem definition which defines by its Name, statut and the Matrix
1149 //!
1150 //! This class lets you use Dtk_Constraint.
1151 //! \SmartPtr{Dtk_ConstraintPtr}
1153 {
1154 public:
1156  {
1157  ValueTypeUndefined = 0,
1162  };
1164  {
1165  switch( inEnum )
1166  {
1167  case ValueTypeSame: return L"TypeSame";
1168  case ValueTypeOpposite: return L"TypeOpposite";
1169  case ValueTypeInternal: return L"TypeInternal";
1170  case ValueTypeExternal: return L"TypeExternal";
1171  default:
1172  case ValueTypeUndefined: return L"TypeUndefined";
1173  }
1174  }
1175 
1177  {
1178  ValueTypeUnknown = 0,
1184  };
1186  {
1187  switch( inEnum )
1188  {
1189  case ValueTypeAngle: return L"Angle";
1190  case ValueTypeDistance: return L"Distance";
1191  case ValueTypePosition: return L"Position";
1192  case ValueTypeRotation: return L"Rotation";
1193  case ValueTypeOrientation: return L"Orientation";
1194  default:
1195  case ValueTypeUnknown: return L"TypeUnknown";
1196  }
1197  }
1198 
1200  {
1201  public:
1204 
1205  _ConstraintValue(const ConstraintValueTypeEnum& inValueType, Dtk_Val& inValue, const Dtk_Int32& inEnableLowerLimit, const Dtk_Double64& inLowerLimit, const Dtk_Int32& inEnableUpperLimit, const Dtk_Double64& inUpperLimit);
1206  _ConstraintValue(const ConstraintValueTypeEnum& inValueType, Dtk_Val& inValue);
1207 
1214  private:
1215 
1216  };
1217 
1219  {
1220  TypeUnknown = 0,
1221  //! \image html align.png
1223  //! \image html angle.png
1225  //! \image html bond.png
1228  //! \image html center.png
1230  //! \image html concentric.png
1232  //! \image html coincidence.png
1234  //! \image html distance.png
1236  //! \image html fit.png
1238  //! \image html fix.png
1245  //! \image html lock.png
1247  //! \image html orientangle.png
1249  //! \image html parallel.png
1252  //! \image html perpendicular.png
1258  //! \image html symmetric.png
1260  //! \image html tangent.png
1262  //! \image html touch.png
1265  TypeWidth
1266  };
1268  {
1269  switch (inEnum)
1270  {
1271  case TypeAlign: return L"TypeAlign";
1272  case TypeAngle: return L"TypeAngle";
1273  case TypeBond: return L"TypeBond";
1274  case TypeCam: return L"TypeCam";
1275  case TypeCenter: return L"TypeCenter";
1276  case TypeConcentric: return L"TypeConcentric";
1277  case TypeCoincidence: return L"TypeCoincidence";
1278  case TypeDistance: return L"TypeDistance";
1279  case TypeFit: return L"TypeFit";
1280  case TypeFix: return L"TypeFix";
1281  case TypeGear: return L"TypeGear";
1282  case TypeHinge: return L"TypeHinge";
1283  case TypeLimit: return L"TypeLimit";
1284  case TypeLinear: return L"TypeLinear";
1285  case TypeLinearCoupler: return L"TypeLinearCoupler";
1286  case TypeLock: return L"TypeLock";
1287  case TypeOrientAngle: return L"TypeOrientAngle";
1288  case TypeParallel: return L"TypeParallel";
1289  case TypePathMate: return L"TypePathMate";
1290  case TypePerpendicular: return L"TypePerpendicular";
1291  case TypeProfileCenter: return L"TypeProfileCenter";
1292  case TypeRackPinion: return L"TypeRackPinion";
1293  case TypeScrew: return L"TypeScrew";
1294  case TypeSlot: return L"TypeSlot";
1295  case TypeSymmetric: return L"TypeSymmetric";
1296  case TypeTangent: return L"TypeTangent";
1297  case TypeTouch: return L"TypeTouch";
1298  case TypeUniversalJoint: return L"TypeUniversalJoint";
1299  case TypeWidth: return L"TypeWidth";
1300  default:
1301  case TypeUnknown: return L"Unknown";
1302  }
1303  }
1304 
1307 
1308 
1310 
1311  //! \brief Get the type of the Constraint .
1312  //! \return the type of this Constraint .
1313  //!
1315  //! \brief Set the type of the Constraint .
1316  //!
1318 
1319  //! \brief Get the number of Dtk_Constraint::_ConstraintValue in the constraint.
1320  //! \return The number of Dtk_Constraint::_ConstraintValue in the constraint.
1321  //!
1323 
1324  //! \brief Get the Dtk_Constraint::_ConstraintValue at the specified index.
1325  //! \return A Dtk_Constraint::_ConstraintValue.
1326  //!
1327  const _ConstraintValue& GetConstraintValue( const Dtk_Size_t &index ) const;
1328 
1329  //! \brief Get a Value of the Constraint .
1330  //! \return a Value of this Constraint .
1331  //!
1332  Dtk_ErrorStatus GetValue( const ConstraintValueTypeEnum& inValue, Dtk_Val& outValue, Dtk_Int32& outEnableLowerLimit, Dtk_Double64& outLowerLimit, Dtk_Int32& outEnableUpperLimit, Dtk_Double64& outUpperLimit ) const;
1333  Dtk_ErrorStatus GetValue( const ConstraintValueTypeEnum& inValue, Dtk_Val& outValue ) const;
1334 
1335  //! \brief Get all types of values in the Constraint.
1336  //! \return All types of values contained in the Constraint.
1337  //!
1339 
1340  //! \brief Set a Value of the Constraint .
1341  //!
1342  void SetValue( const ConstraintValueTypeEnum& inValueType, Dtk_Val& inValue, const Dtk_Int32& inEnableLowerLimit, const Dtk_Double64& inLowerLimit, const Dtk_Int32& inEnableUpperLimit, const Dtk_Double64& inUpperLimit );
1343  void SetValue( const ConstraintValueTypeEnum& inValueType, Dtk_Val& inValue );
1344 
1345  //! \brief Get the number of Dtk_ConstraintReference in the constraint.
1346  //! \return The number of Dtk_ConstraintReference in the constraint.
1347  //!
1349  //! \brief Get the Dtk_ConstraintReference at the specified index.
1350  //! \param The index to retrieve the Dtk_ConstraintReference from.
1351  //! \return A Dtk_ConstraintReference.
1352  //!
1354  //! \brief Get all ConstraintReferences of the Constraint.
1355  //! \return A tab with all the ConstraintReferences of this Constraint.
1356  //!
1358  //! \brief Add a ConstraintReference to this Constraint .
1359  //!
1361 
1362 
1363  //! \return The type of the entity type - DTK_TYPE_CONSTRAINT -
1365 
1366  //! \CreateBase
1368  virtual void conv_ptr(Dtk_Constraint ** s) { *s = this; }
1369  int DtkDynamicType(const int& inId);
1371 
1372  //! \Transform{inTransfo}
1374 
1375 protected:
1377  virtual ~Dtk_Constraint();
1378  struct Dtk_Handle;
1379  Dtk_Handle *_Private;
1380  void _Init();
1381  void _Copy(const Dtk_Constraint& s);
1382  void _Reset();
1383  inline virtual Dtk_Object* Clone() { return new Dtk_Constraint(*this); }
1384  friend class Dtk_SmartPtr<Dtk_Constraint>;
1385 
1386 };
1387 
1388 #endif
DTK_TYPE_COLOR_INFOS_SET
@ DTK_TYPE_COLOR_INFOS_SET
Definition: define.h:498
Dtk_Entity::Dtk_Entity
Dtk_Entity()
Dtk_Constraint::TypeFix
@ TypeFix
Definition: util_ent_dtk.hpp:1239
Dtk_ConstraintReference::SetNodeConnector
void SetNodeConnector(const Dtk_NodeConnectorPtr &in)
Set the type of the Constraint .
Dtk_Info::GetFlexibleFlag
int GetFlexibleFlag() const
Dtk_Info::FindAttribute
Dtk_ErrorStatus FindAttribute(const Dtk_string &name, Dtk_Val &val) const
Dtk_ModelDisplay::Create
static Dtk_ModelDisplayPtr Create(const Dtk_CameraPtr &inCamera, const Dtk_EntityPtr &inClippingEntity, const Dtk_bool inIsActivated)
Calls full featured constructor to allocate a new object.
Dtk_ConstraintReference::DtkDynamicCast
static Dtk_ConstraintReference * DtkDynamicCast(Dtk_Object *inObject)
DTK_TYPE_LAYER_INFOS_SET
@ DTK_TYPE_LAYER_INFOS_SET
Definition: define.h:494
Dtk_ModelDisplay::GetVisibleLayers
void GetVisibleLayers(Dtk_tab< Dtk_Int32 > &outVisibleLayers) const
Visible layer for Dtk_ModelDisplay.
Dtk_ConstraintReference::_Private
Dtk_Handle * _Private
Definition: util_ent_dtk.hpp:1134
Dtk_pair
Definition: util_stl_dtk.hpp:921
Dtk_LayerFilterInfos::Dtk_LayerFilterInfos
Dtk_LayerFilterInfos(const Dtk_Size_t inNumLayers, Dtk_string inName=L"", Dtk_string inDescription=L"", const Dtk_bool inAreLayersActivatedByDefault=DTK_FALSE)
Dtk_Info::GetReferenceSet
Dtk_ErrorStatus GetReferenceSet(Dtk_tab< Dtk_string > &outArray, Dtk_Int32 inRemovePrefix=DTK_FALSE) const
Dtk_Entity::get_info
Dtk_InfoPtr get_info() const
Dtk_LayerInfosSetPtr
Dtk_SmartPtr< Dtk_LayerInfosSet > Dtk_LayerInfosSetPtr
Definition: util_ent_dtk.hpp:419
Dtk_ID
uint32_t Dtk_ID
Definition: define.h:681
Dtk_AxisSystem::SetMatrix
void SetMatrix(const Dtk_transfo &in)
Get the Matrix of the AxisSystem.
Dtk_Info::_Private
Dtk_Handle * _Private
Definition: util_ent_dtk.hpp:118
Dtk_transfo
This is the Transformation dedicated class.
Definition: dtk_transfo.hpp:19
Dtk_AxisSystem::GetIsVisible
int GetIsVisible() const
Get the visibility status.
Dtk_ColorInfosSet::GetDefaultColor
Dtk_ErrorStatus GetDefaultColor(Dtk_Int32 &outDefaultColor) const
Gets the default color number.
Dtk_Info::GetName
Dtk_string GetName() const
Retrieves the entity name.
Pdfw::inCamera
Dtk_CameraPtr inCamera
Definition: pdfw.hpp:655
Dtk_AxisSystemPtr
Dtk_SmartPtr< Dtk_AxisSystem > Dtk_AxisSystemPtr
Definition: util_ent_dtk.hpp:423
Dtk_Info::GetPhysicalMaterialInfos
Dtk_PhysicalMaterialInfosPtr GetPhysicalMaterialInfos() const
Retrieves the entity MaterialInfos.
Dtk_Constraint::_ConstraintValue
Definition: util_ent_dtk.hpp:1200
Dtk_Entity::GetID
const Dtk_ID & GetID() const
Get Internal UniqueID.
Dtk_Preview::~Dtk_Preview
virtual ~Dtk_Preview()
Dtk_Info::SetCurveThickNess
Dtk_ErrorStatus SetCurveThickNess(const Dtk_Int32 &inCurveThickNess)
Dtk_ModelDisplay::rendering_mode_wireframe_face_analysis
@ rendering_mode_wireframe_face_analysis
Definition: util_ent_dtk.hpp:997
Dtk_LayerInfosSet::_Private
Dtk_Handle * _Private
Definition: util_ent_dtk.hpp:556
Dtk_string::cmp
int cmp(const Dtk_WChar_t *s2) const
Dtk_Info::SetFormFlag
Dtk_ErrorStatus SetFormFlag(const Dtk_Int32 &inFormFlag)
Dtk_Info::GetBlankedStatus
int GetBlankedStatus() const
Retrieves the entity Blanked Status.
Dtk_ConstraintReference::Dtk_ConstraintReference
Dtk_ConstraintReference(const Dtk_ConstraintReference &p)
Dtk_Info::GetAddedItemFlag
int GetAddedItemFlag() const
Dtk_Info::SetFlexibleFlag
Dtk_ErrorStatus SetFlexibleFlag(const Dtk_Int32 &inIsFlexible)
Dtk_Info::AddAttribute
Dtk_ErrorStatus AddAttribute(Dtk_string name, Dtk_Val val)
Dtk_ColorInfosSet::GetNumColors
Dtk_Size_t GetNumColors() const
Retrieves the number of colors.
Dtk_Info::GetInfiniteGeometryFlag
int GetInfiniteGeometryFlag() const
Retrieves the Flag for Infinite Geometry.
Dtk_Constraint::TypeSlot
@ TypeSlot
Definition: util_ent_dtk.hpp:1257
Dtk_Info
This is the generic Info class.
Definition: util_ent_dtk.hpp:114
Dtk_Info::SetName
Dtk_ErrorStatus SetName(Dtk_string inName)
Dtk_Constraint::_ConstraintValue::_ConstraintValue
_ConstraintValue()
Dtk_ConstraintReference::Dtk_ConstraintReference
Dtk_ConstraintReference()
Dtk_Constraint::SetValue
void SetValue(const ConstraintValueTypeEnum &inValueType, Dtk_Val &inValue)
Dtk_LayerFilterInfos::DtkDynamicCast
static Dtk_LayerFilterInfos * DtkDynamicCast(Dtk_Object *s)
Performs a dynamic cast - doesn't need RTTI -.
Dtk_ModelDisplay::GetSectionInformation
void GetSectionInformation(SectionTypeEnum &outSectionType, Dtk_Int32 &outIsLocked, Dtk_Double64 &outThickness) const
Get the type of the Section on the Dtk_Capture.
Dtk_Info::GetPointSymbolType
Dtk_PointType GetPointSymbolType() const
Retrieves the Symbol Type - for point only -.
Dtk_ColorInfosSet::~Dtk_ColorInfosSet
~Dtk_ColorInfosSet()
Destructor.
Dtk_Constraint::GetConstraintValue
const _ConstraintValue & GetConstraintValue(const Dtk_Size_t &index) const
Get the Dtk_Constraint::_ConstraintValue at the specified index.
Dtk_AxisSystem::~Dtk_AxisSystem
virtual ~Dtk_AxisSystem()
Dtk_Info::GetColorId
int GetColorId() const
Retrieves the entity color index in Dtk_API color table.
Dtk_Info::GetMandatoryFlag
enum MandatoryFlag GetMandatoryFlag() const
Retrieves the Mandatory Flag.
Dtk_Info::GetDefaultChildIndex
int GetDefaultChildIndex() const
Dtk_Constraint::TypeLinearCoupler
@ TypeLinearCoupler
Definition: util_ent_dtk.hpp:1244
Dtk_ModelDisplay::GetIsStandardView
Dtk_bool GetIsStandardView() const
Get DTK_TRUE if this Dtk_ModelDisplay is a Standard View , DTK_FALSE if it is a user defined view .
Dtk_Info::GetDisplayLineWidth
Dtk_Double64 GetDisplayLineWidth() const
Retrieves if all wireframe is displayed with same width.
Dtk_LayerInfosSet::get_type_detk
type_detk get_type_detk() const
Definition: util_ent_dtk.hpp:581
dtk_AddColorInTable
int dtk_AddColorInTable(const Dtk_RGB &)
Dtk_Constraint::ConstraintOrientationTypeEnum
ConstraintOrientationTypeEnum
Definition: util_ent_dtk.hpp:1156
Dtk_Preview::SetType
void SetType(preview_type_detk inPreviewType)
Dtk_AxisSystem::Dtk_AxisSystem
Dtk_AxisSystem()
DTK_TYPE_MODEL_DISPLAY
@ DTK_TYPE_MODEL_DISPLAY
Definition: define.h:476
Dtk_Constraint::TypeAlign
@ TypeAlign
Definition: util_ent_dtk.hpp:1222
Dtk_Constraint::conv_ptr
virtual void conv_ptr(Dtk_Constraint **s)
Definition: util_ent_dtk.hpp:1368
Dtk_AxisSystem::operator=
Dtk_AxisSystem & operator=(const Dtk_AxisSystem &p)
Dtk_Info::AddCustomerDefinedAttribute
Dtk_ErrorStatus AddCustomerDefinedAttribute(Dtk_string name, Dtk_Val val)
Dtk_Constraint::GetValuesTypes
Dtk_tab< ConstraintValueTypeEnum > GetValuesTypes() const
Get all types of values in the Constraint.
Dtk_Info::XYPlane
@ XYPlane
Definition: util_ent_dtk.hpp:133
Dtk_Entity::Dtk_Entity
Dtk_Entity(Dtk_Entity &&s) DTK_NOEXCEPT
Dtk_LayerInfosSet::Layer
Definition: util_ent_dtk.hpp:519
Dtk_Info::GetCurveThickNessInMM
Dtk_Double64 GetCurveThickNessInMM() const
Retrieves the curve thickness - if exists and relevant -.
Dtk_LayerInfosSet::Layer::m_Name
Dtk_string m_Name
Definition: util_ent_dtk.hpp:527
Dtk_ColorInfosSet::DtkDynamicType
Dtk_Int32 DtkDynamicType(const Dtk_Int32 &inId)
Retrieves the dynamic entity type.
Dtk_Info::GetRefEntityFlag
int GetRefEntityFlag() const
Retrieves the Flag for Reference Entity (Reference planes , axis, point.
DTK_TYPE_ENTITY
@ DTK_TYPE_ENTITY
Definition: define.h:457
Dtk_string_compare_case_insensitive
Definition: util_ent_dtk.hpp:100
Dtk_LayerInfosSet::Dtk_LayerInfosSet
Dtk_LayerInfosSet(Dtk_LayerInfosSet &&s) DTK_NOEXCEPT
Move constructor.
catiav5w::inTransfo
const Dtk_string const Dtk_transfo & inTransfo
Definition: catiav5w.hpp:622
Dtk_LayerInfosSet::Layer::m_Status
Dtk_UShort16 m_Status
Definition: util_ent_dtk.hpp:530
Dtk_Info::GetPersistentName
Dtk_string GetPersistentName() const
Retrieves the entity persistent name.
DTK_CENTERLINE
@ DTK_CENTERLINE
Definition: util_ent_dtk.hpp:54
Dtk_Constraint::Dtk_Constraint
Dtk_Constraint()
Dtk_PreviewPtr
Dtk_SmartPtr< Dtk_Preview > Dtk_PreviewPtr
Definition: util_ent_dtk.hpp:832
Dtk_Constraint::_ConstraintValue::_ValueUpper
Dtk_Double64 _ValueUpper
Definition: util_ent_dtk.hpp:1213
Dtk_Constraint::ValueTypeSame
@ ValueTypeSame
Definition: util_ent_dtk.hpp:1158
Dtk_Constraint::TypeSymmetric
@ TypeSymmetric
Definition: util_ent_dtk.hpp:1259
Dtk_Constraint::_Copy
void _Copy(const Dtk_Constraint &s)
DTK_PT_CROSS
@ DTK_PT_CROSS
Definition: util_ent_dtk.hpp:27
Dtk_Info::SetRenderInfosId
Dtk_ErrorStatus SetRenderInfosId(const Dtk_ID &inRenderId)
Dtk_Info::SetHierarchy
Dtk_ErrorStatus SetHierarchy(const Dtk_Int32 &inHierarchy)
Dtk_LayerFilterInfosPtr
Dtk_SmartPtr< Dtk_LayerFilterInfos > Dtk_LayerFilterInfosPtr
Definition: util_ent_dtk.hpp:422
Dtk_LayerFilterInfos::Dtk_LayerFilterInfos
Dtk_LayerFilterInfos(const Dtk_LayerFilterInfos &s)
Copy constructor.
Dtk_Info::AddRenderInfos
Dtk_ErrorStatus AddRenderInfos(const Dtk_RenderInfosPtr &inRender)
Dtk_Info::SetConfigurationName
Dtk_ErrorStatus SetConfigurationName(const Dtk_string &inName)
Dtk_Preview::GetStreamSize
Dtk_Int32 GetStreamSize()
Dtk_ConstraintReference::conv_ptr
virtual void conv_ptr(Dtk_ConstraintReference **s)
Definition: util_ent_dtk.hpp:1124
Dtk_Info::DtkDynamicCast
static Dtk_Info * DtkDynamicCast(Dtk_Object *s)
Dtk_string
This is a high level string class.
Definition: dtk_string.hpp:53
DTK_PT_DOT
@ DTK_PT_DOT
Definition: util_ent_dtk.hpp:34
Dtk_Info::GetActiveChildren
Dtk_tab< Dtk_Int32 > GetActiveChildren() const
Dtk_ModelDisplay::rendering_mode_shaded_with_visible_edges
@ rendering_mode_shaded_with_visible_edges
Definition: util_ent_dtk.hpp:993
Dtk_ModelDisplay::rendering_mode_wireframe_with_all_edges
@ rendering_mode_wireframe_with_all_edges
Definition: util_ent_dtk.hpp:994
Dtk_Info::GetViewId
int GetViewId() const
DTK_PT_UNSPECIFIED
@ DTK_PT_UNSPECIFIED
Definition: util_ent_dtk.hpp:26
Dtk_Size_t
size_t Dtk_Size_t
Definition: define.h:704
Dtk_Info::GetColor
Dtk_RGB GetColor() const
Retrieves the entity color as Dtk_RGBA values.
Dtk_Constraint::TypeBond
@ TypeBond
Definition: util_ent_dtk.hpp:1226
Dtk_Info::GetActivationFlag
int GetActivationFlag() const
Dtk_Constraint::ValueTypeInternal
@ ValueTypeInternal
Definition: util_ent_dtk.hpp:1160
DTK_TYPE_AXIS_SYSTEM
@ DTK_TYPE_AXIS_SYSTEM
Definition: define.h:34
Dtk_ModelDisplay::~Dtk_ModelDisplay
~Dtk_ModelDisplay()
Destructor.
Dtk_LayerInfosSet::~Dtk_LayerInfosSet
~Dtk_LayerInfosSet()
Destructor.
Dtk_Constraint::ConstraintValueTypeEnumToString
static Dtk_string ConstraintValueTypeEnumToString(const ConstraintValueTypeEnum &inEnum)
Definition: util_ent_dtk.hpp:1185
DTK_PT_STAR
@ DTK_PT_STAR
Definition: util_ent_dtk.hpp:33
Dtk_AxisSystem::GetName
Dtk_string GetName() const
Get the Name of the AxisSystem.
Dtk_AxisSystem::Dtk_AxisSystem
Dtk_AxisSystem(const Dtk_AxisSystem &p)
Dtk_UUID
Definition: dtk_uuid.hpp:8
Dtk_ConstraintReference::~Dtk_ConstraintReference
virtual ~Dtk_ConstraintReference()
Dtk_Constraint::GetNumberOfConstraintReferences
Dtk_Size_t GetNumberOfConstraintReferences() const
Get the number of Dtk_ConstraintReference in the constraint.
dtk_metadata.hpp
Dtk_ModelDisplay::SetIsStandardView
void SetIsStandardView() const
Set if this Dtk_ModelDisplay is a Standard View other case it is a user defined view.
Dtk_Info::Dtk_Info
Dtk_Info()
Dtk_LayerInfosSet::SetAsDeprecated
SetAsDeprecated("v2026.2", "Use Create then Dtk_LayerInfoSet::AddLayers instead.") static Dtk_LayerInfosSetPtr Create(const Dtk_Size_t inNumLayers)
Calls a constructor to allocate a new object.
Dtk_AxisSystem::create
static Dtk_SmartPtr< Dtk_AxisSystem > create()
Calls default constructor to allocate a new object.
Dtk_Info::GetIsUpToDate
Dtk_bool GetIsUpToDate() const
Retrieves up to date state of current object.
Dtk_Constraint::ValueTypeExternal
@ ValueTypeExternal
Definition: util_ent_dtk.hpp:1161
Dtk_UShort16
uint16_t Dtk_UShort16
Definition: define.h:683
Dtk_Info::SetMetaData
Dtk_ErrorStatus SetMetaData(Dtk_tab< Dtk_MetaDataPtr > &inArray)
DTK_BREAKLINE
@ DTK_BREAKLINE
Definition: util_ent_dtk.hpp:62
dtk_val.hpp
DTK_FALSE
#define DTK_FALSE
Definition: define.h:720
Dtk_Info::ListAllCustomerDefinedAttributesWithVal
Dtk_ErrorStatus ListAllCustomerDefinedAttributesWithVal(Dtk_tab< Dtk_pair< Dtk_string, Dtk_Val > > &tab) const
Dtk_bool
char Dtk_bool
Definition: define.h:717
Dtk_Info::RemoveAttribute
Dtk_ErrorStatus RemoveAttribute(const Dtk_string &name)
DTK_TYPE_INFO
@ DTK_TYPE_INFO
Definition: define.h:458
Dtk_LayerFilterInfos::SelectLayers
Dtk_ErrorStatus SelectLayers(const Dtk_tab< Dtk_Size_t > &inLayerIndexes)
Selects given layers in the layer filter.
catiav5w::inBlankedStatus
const Dtk_string const Dtk_transfo const Dtk_bool inBlankedStatus
Definition: catiav5w.hpp:623
Dtk_AxisSystem::SetName
void SetName(const Dtk_string &in)
Set the Name of the AxisSystem.
Dtk_Info::_reset
void _reset()
Dtk_ConstraintReference::operator=
Dtk_ConstraintReference & operator=(const Dtk_ConstraintReference &p)
DTK_SOLIDLINE
@ DTK_SOLIDLINE
Definition: util_ent_dtk.hpp:48
Dtk_Entity::_Private
Dtk_Handle * _Private
Definition: util_ent_dtk.hpp:373
Dtk_ModelDisplay::rendering_mode_wireframe_with_only_visible_edges
@ rendering_mode_wireframe_with_only_visible_edges
Definition: util_ent_dtk.hpp:995
Dtk_Info::SetColorId
Dtk_ErrorStatus SetColorId(const Dtk_Int32 &inColorId)
Dtk_Constraint::ValueTypeOrientation
@ ValueTypeOrientation
Definition: util_ent_dtk.hpp:1183
Dtk_Constraint::SetConstraintType
void SetConstraintType(const ConstraintTypeEnum &in)
Set the type of the Constraint .
Dtk_Info::GetUuid
Dtk_UUID GetUuid() const
Retrieves the entity UniqueID if any.
Dtk_Info::SetCurveLineTypeDefinitionId
Dtk_ErrorStatus SetCurveLineTypeDefinitionId(const Dtk_ID &inLineTypeDefinitionId)
Set Dtk_LineTypeDefinition of current object via it's id in Dtk_API table.
DTK_NUM_FONT_LINE_TYPES
@ DTK_NUM_FONT_LINE_TYPES
Definition: util_ent_dtk.hpp:63
Dtk_Info::GetCurveThickNess
int GetCurveThickNess() const
Dtk_Constraint
This is the Dtk_Constraint class.
Definition: util_ent_dtk.hpp:1153
Dtk_Double64
double Dtk_Double64
Definition: define.h:691
Dtk_Constraint::_ConstraintValue::_ConstraintValue
_ConstraintValue(const ConstraintValueTypeEnum &inValueType, Dtk_Val &inValue, const Dtk_Int32 &inEnableLowerLimit, const Dtk_Double64 &inLowerLimit, const Dtk_Int32 &inEnableUpperLimit, const Dtk_Double64 &inUpperLimit)
Dtk_string::icmp
int icmp(const Dtk_WChar_t *s2) const
Dtk_ModelDisplay::SetRenderingMode
void SetRenderingMode(RenderingModeEnum inMode) const
Set the rendering mode shaded , shaded with edge , ...
Dtk_ConstraintReference::GetNodeConnector
const Dtk_NodeConnectorPtr & GetNodeConnector() const
Get the Dtk_NodeConnectorPtr of the ConstraintReference .
Dtk_Constraint::GetConstraintType
const ConstraintTypeEnum & GetConstraintType() const
Get the type of the Constraint .
Dtk_LayerFilterInfos::get_type_detk
type_detk get_type_detk() const
Definition: util_ent_dtk.hpp:460
Dtk_ColorInfosSet::Clone
virtual Dtk_Object * Clone()
Definition: util_ent_dtk.hpp:739
Dtk_Constraint::DtkDynamicCast
static Dtk_Constraint * DtkDynamicCast(Dtk_Object *inObject)
Dtk_Constraint::DtkDynamicType
int DtkDynamicType(const int &inId)
Dtk_ModelDisplay::RenderingModeEnum
RenderingModeEnum
Definition: util_ent_dtk.hpp:991
Dtk_Constraint::ValueTypeDistance
@ ValueTypeDistance
Definition: util_ent_dtk.hpp:1180
Dtk_Info::SetBlankedStatus
Dtk_ErrorStatus SetBlankedStatus(const Dtk_Int32 &inBlankedStatus)
Dtk_Info::Dtk_Info
Dtk_Info(const Dtk_Info &s)
Dtk_Constraint::ValueTypeAngle
@ ValueTypeAngle
Definition: util_ent_dtk.hpp:1179
Dtk_Entity::DtkDynamicCast
static Dtk_Entity * DtkDynamicCast(Dtk_Object *s)
Dtk_Info::create
static Dtk_SmartPtr< Dtk_Info > create(Dtk_Info &&in)
Calls move constructor to allocate a new object.
Dtk_AxisSystem::_reset
void _reset()
Dtk_Info::SetInfiniteGeometryFlag
Dtk_ErrorStatus SetInfiniteGeometryFlag(const Dtk_Int32 &inInfiniteGeometryFlag)
util_draw_ptr_dtk.hpp
Dtk_LayerFilterInfos::SelectLayer
Dtk_ErrorStatus SelectLayer(const Dtk_Size_t inLayerIndex)
Selects a given layer in the layer filter.
Dtk_Info::SetAddedItemFlag
Dtk_ErrorStatus SetAddedItemFlag(const Dtk_Int32 &inAddedItem)
Dtk_Constraint::_ConstraintValue::_ConstraintValue
_ConstraintValue(const ConstraintValueTypeEnum &inValueType, Dtk_Val &inValue)
Dtk_AxisSystem::_Private
Dtk_Handle * _Private
Definition: util_ent_dtk.hpp:948
Dtk_Val
Definition: dtk_val.hpp:67
preview_type_detk
preview_type_detk
Definition: define.h:624
Dtk_Info::_Material
Dtk_MaterialPtr _Material
Definition: util_ent_dtk.hpp:120
Dtk_Info::GetMetaData
Dtk_ErrorStatus GetMetaData(Dtk_tab< Dtk_MetaDataPtr > &outArray) const
Dtk_Constraint::ValueTypeRotation
@ ValueTypeRotation
Definition: util_ent_dtk.hpp:1182
DTK_PT_UP_TRIANGLE
@ DTK_PT_UP_TRIANGLE
Definition: util_ent_dtk.hpp:39
Dtk_ColorInfosSet::SetDefaultColor
Dtk_ErrorStatus SetDefaultColor(const Dtk_Int32 inDefaultColor)
Sets the default color number.
Dtk_Info::SetCurveLineType
Dtk_ErrorStatus SetCurveLineType(const Dtk_Int32 &inCurveLineType)
Set line type of current object thanks to Dtk_FontLineType enumeration.
Dtk_Info::_Store
virtual Dtk_ErrorStatus _Store(void *)
Dtk_Constraint::GetConstraintReference
const Dtk_ConstraintReferencePtr & GetConstraintReference(const Dtk_Size_t &index) const
Get the Dtk_ConstraintReference at the specified index.
Dtk_Constraint::_ConstraintValue::~_ConstraintValue
~_ConstraintValue()
Dtk_Entity::DtkDynamicType
int DtkDynamicType(const int &inId)
Dtk_AxisSystem::SetIsVisible
void SetIsVisible()
Set the visibility status.
Dtk_ConstraintReference
This is the Dtk_ConstraintReference class.
Definition: util_ent_dtk.hpp:1094
Dtk_Constraint::ConstraintOrientationTypeEnumToString
static Dtk_string ConstraintOrientationTypeEnumToString(const ConstraintOrientationTypeEnum &inEnum)
Definition: util_ent_dtk.hpp:1163
Dtk_Constraint::_ConstraintValue::_ValueType
ConstraintValueTypeEnum _ValueType
Definition: util_ent_dtk.hpp:1208
Dtk_AxisSystem::_Init
void _Init()
DTK_PT_COINCIDENT
@ DTK_PT_COINCIDENT
Definition: util_ent_dtk.hpp:30
Dtk_AxisSystem::DtkDynamicType
int DtkDynamicType(const int &inId)
Dtk_LayerInfosSet
This class represents a set of layer information, such as their name and identifier,...
Definition: util_ent_dtk.hpp:515
Dtk_Constraint::TypeTouch
@ TypeTouch
Definition: util_ent_dtk.hpp:1263
Dtk_ModelDisplay::rendering_mode_wireframe_partially_shade
@ rendering_mode_wireframe_partially_shade
Definition: util_ent_dtk.hpp:998
Dtk_Info::SetViewId
Dtk_ErrorStatus SetViewId(const Dtk_Int32 &inViewId)
Dtk_Info::SetDisplayLineWidth
Dtk_ErrorStatus SetDisplayLineWidth(const Dtk_Double64 &inDisplayLineWidth)
Dtk_Info::SetPointSymbolType
Dtk_ErrorStatus SetPointSymbolType(const Dtk_PointType inPointSymbolType)
Dtk_AxisSystem::IsDefault
Dtk_bool IsDefault() const
Get the default status.
Dtk_ModelDisplay
This is the Dtk_ModelDisplay class.
Definition: util_ent_dtk.hpp:962
DTK_DASHED
@ DTK_DASHED
Definition: util_ent_dtk.hpp:50
Dtk_ModelDisplay::GetRenderingMode
RenderingModeEnum GetRenderingMode() const
Get the rendering mode shaded , shaded with edge , ...
Dtk_Info::SetActiveChildren
Dtk_ErrorStatus SetActiveChildren(const Dtk_tab< Dtk_Int32 > &inIndices)
Dtk_Info::AddCurveLineTypeDefinition
Dtk_ErrorStatus AddCurveLineTypeDefinition(const Dtk_LineTypeDefinitionPtr &inLineTypeDefinition)
Add a Dtk_LineTypeDefinition to Dtk_API and set it to current object.
Dtk_ModelDisplay::Dtk_ModelDisplay
Dtk_ModelDisplay(const Dtk_CameraPtr &inCamera, const Dtk_EntityPtr &inClippingEntity, const Dtk_bool inIsActivated)
Dtk_Preview::DtkDynamicType
int DtkDynamicType(const int &inId)
Dtk_LayerFilterInfos::IsLayerSelected
Dtk_bool IsLayerSelected(const Dtk_Size_t inLayerIndex) const
Tells if the layer is selected or not giving its index.
Dtk_ModelDisplayPtr
Dtk_SmartPtr< Dtk_ModelDisplay > Dtk_ModelDisplayPtr
Definition: util_ent_dtk.hpp:424
Dtk_ModelDisplay::SectionBox
@ SectionBox
Definition: util_ent_dtk.hpp:1006
Dtk_Constraint::TypeAngle
@ TypeAngle
Definition: util_ent_dtk.hpp:1224
Dtk_ModelDisplay::_Private
Dtk_Handle * _Private
Definition: util_ent_dtk.hpp:964
Dtk_Constraint::TypePerpendicular
@ TypePerpendicular
Definition: util_ent_dtk.hpp:1253
Dtk_Info::SetHierarchyColorFlag
Dtk_ErrorStatus SetHierarchyColorFlag(const Dtk_Int32 &inHierarchy)
Dtk_Info::SetActivationFlag
Dtk_ErrorStatus SetActivationFlag(const Dtk_Int32 &inActivation)
Dtk_LayerInfosSet::DtkDynamicCast
static Dtk_LayerInfosSet * DtkDynamicCast(Dtk_Object *s)
Performs a dynamic cast - doesn't need RTTI -.
Dtk_ConstraintReference::SetPosition
void SetPosition(const Dtk_pnt &in)
Set the Position of the ConstraintReference .
Dtk_Constraint::TypeHinge
@ TypeHinge
Definition: util_ent_dtk.hpp:1241
Dtk_Constraint::TypeConcentric
@ TypeConcentric
Definition: util_ent_dtk.hpp:1231
Dtk_Info::SetAsDeprecated
SetAsDeprecated("v2026.2", "use GetMetaData() methods instead.") Dtk_ErrorStatus GetProperties(Dtk_tab< Dtk_PropertiesPtr > &outArray) const
Dtk_LayerInfosSet::Layer::Status
Status
Definition: util_ent_dtk.hpp:521
Dtk_Info::SetAdditionnalGeometryFlag
Dtk_ErrorStatus SetAdditionnalGeometryFlag(const Dtk_Int32 &inAdditionnalGeom)
DTK_PT_SMALLDOT
@ DTK_PT_SMALLDOT
Definition: util_ent_dtk.hpp:35
Dtk_ModelDisplay::GetClippingEntity
Dtk_EntityPtr GetClippingEntity() const
Retrieves the Dtk_ModelDisplay clipping entity - read only -.
Dtk_AxisSystem::_copy
void _copy(const Dtk_AxisSystem &s)
Dtk_Constraint::TypeParallel
@ TypeParallel
Definition: util_ent_dtk.hpp:1250
Dtk_ModelDisplay::rendering_mode_static_wireframe
@ rendering_mode_static_wireframe
Definition: util_ent_dtk.hpp:996
Dtk_LayerInfosSet::Dtk_LayerInfosSet
Dtk_LayerInfosSet()
Dtk_LayerInfosSet::Dtk_LayerInfosSet
Dtk_LayerInfosSet(const Dtk_LayerInfosSet &s)
Copy constructor.
Dtk_LayerInfosSet::Layer::Unflag
void Unflag(Status in)
Definition: util_ent_dtk.hpp:549
Dtk_Info::Clone
virtual Dtk_Object * Clone()
Definition: util_ent_dtk.hpp:128
Dtk_Int32
int32_t Dtk_Int32
Definition: define.h:679
DTK_DOTTED
@ DTK_DOTTED
Definition: util_ent_dtk.hpp:56
Dtk_ModelDisplay::get_type_detk
type_detk get_type_detk() const
Definition: util_ent_dtk.hpp:1018
Dtk_Info::AddLayer
Dtk_ErrorStatus AddLayer(const Dtk_Int32 &inLayer)
dtk_maindoc_ptr.hpp
Pdfw::inClippingEntity
Dtk_CameraPtr Dtk_EntityPtr inClippingEntity
Definition: pdfw.hpp:656
Dtk_ConstraintReference::_Init
void _Init()
Dtk_Constraint::GetValue
Dtk_ErrorStatus GetValue(const ConstraintValueTypeEnum &inValue, Dtk_Val &outValue) const
Dtk_Info::ListAttributes
Dtk_ErrorStatus ListAttributes(const Dtk_string &substring, Dtk_tab< Dtk_string > &tab_keys) const
Dtk_ModelDisplay::rendering_mode_studio
@ rendering_mode_studio
Definition: util_ent_dtk.hpp:999
Dtk_Constraint::ConstraintTypeEnumToString
static Dtk_string ConstraintTypeEnumToString(const ConstraintTypeEnum &inEnum)
Definition: util_ent_dtk.hpp:1267
Dtk_Preview::Create
static Dtk_PreviewPtr Create(const Dtk_Preview &in)
Calls copy constructor to allocate a new object.
Dtk_Info::GetUse
int GetUse() const
DTK_PT_CONCENTRIC
@ DTK_PT_CONCENTRIC
Definition: util_ent_dtk.hpp:29
DTK_TYPE_LAYER_FILTER_INFOS
@ DTK_TYPE_LAYER_FILTER_INFOS
Definition: define.h:495
Dtk_LayerFilterInfos::UnselectLayers
Dtk_ErrorStatus UnselectLayers(const Dtk_tab< Dtk_Size_t > &inLayerIndexes)
Unselects the given layers in the layer filter.
Dtk_Constraint::ValueTypePosition
@ ValueTypePosition
Definition: util_ent_dtk.hpp:1181
Dtk_Preview
This is the Dtk_Preview class.
Definition: util_ent_dtk.hpp:842
Dtk_Info::NotMandatory
@ NotMandatory
Definition: util_ent_dtk.hpp:132
Dtk_Info::GetCurveLineTypeDefinition
Dtk_LineTypeDefinitionPtr GetCurveLineTypeDefinition() const
Retrieves the definition of the curve LineType - for curve entities -.
DTK_PHANTOM
@ DTK_PHANTOM
Definition: util_ent_dtk.hpp:52
DTK_DOTTED_DASHED
@ DTK_DOTTED_DASHED
Definition: util_ent_dtk.hpp:60
Dtk_Constraint::TypeUniversalJoint
@ TypeUniversalJoint
Definition: util_ent_dtk.hpp:1264
Dtk_ColorInfosSet::GetColorDefinition
Dtk_ErrorStatus GetColorDefinition(const Dtk_Size_t inColorPos, Dtk_RGB &outColorDef) const
Gets the ColorID giving its number.
Dtk_Info::SetCurveThickNessInMM
Dtk_ErrorStatus SetCurveThickNessInMM(const Dtk_Double64 inCurveThickNessInMM)
Dtk_Info::GetLayer
int GetLayer() const
Retrieves the entity layer.
Dtk_Info::GetSize
virtual Dtk_Size_t GetSize() const
error_dtk.hpp
Dtk_Info::GetAdditionnalGeometryFlag
int GetAdditionnalGeometryFlag() const
Dtk_Entity::_reset
void _reset()
Dtk_Info::OriginPoint
@ OriginPoint
Definition: util_ent_dtk.hpp:136
Dtk_string_compare_case_insensitive::operator()
bool operator()(const Dtk_string &s1, const Dtk_string &s2) const
Definition: util_ent_dtk.hpp:101
DTK_PT_FULLCIRCLE
@ DTK_PT_FULLCIRCLE
Definition: util_ent_dtk.hpp:31
Dtk_ErrorStatus
Dtk_ErrorStatus
Definition: error_dtk.hpp:6
Dtk_Info::SetId
Dtk_ErrorStatus SetId(const Dtk_Int32 &inId)
Dtk_Constraint::TypeFit
@ TypeFit
Definition: util_ent_dtk.hpp:1237
Dtk_Info::GetRenderInfos
Dtk_RenderInfosPtr GetRenderInfos() const
Retrieves the entity RenderInfos of the entity.
Dtk_Info::GetHierarchyColorFlag
int GetHierarchyColorFlag() const
Dtk_Info::SetMandatoryFlag
Dtk_ErrorStatus SetMandatoryFlag(const enum MandatoryFlag &inMandatoryFlag)
Dtk_LayerFilterInfos::UnselectLayer
Dtk_ErrorStatus UnselectLayer(const Dtk_Size_t inLayerIndex)
Unselects the given layer in the layer filter.
DTK_PT_SQUARE
@ DTK_PT_SQUARE
Definition: util_ent_dtk.hpp:38
Dtk_Constraint::ConstraintValueTypeEnum
ConstraintValueTypeEnum
Definition: util_ent_dtk.hpp:1177
Dtk_Entity::_Store
virtual Dtk_ErrorStatus _Store(void *)
Dtk_ConstraintReference::GetPosition
const Dtk_pnt & GetPosition(Dtk_bool &outHasPosition) const
Get the Position of the ConstraintReference .
Dtk_SmartPtr
Definition: util_ptr_dtk.hpp:37
Dtk_AxisSystem::DtkDynamicCast
static Dtk_AxisSystem * DtkDynamicCast(Dtk_Object *inObject)
Dtk_Preview::GetType
preview_type_detk GetType()
Dtk_Constraint::TypeCam
@ TypeCam
Definition: util_ent_dtk.hpp:1227
DTK_PT_PLUS
@ DTK_PT_PLUS
Definition: util_ent_dtk.hpp:28
Dtk_Info::GetHierarchy
int GetHierarchy() const
Dtk_Entity::GetSize
virtual Dtk_Size_t GetSize() const
Dtk_Entity::operator=
Dtk_Entity & operator=(const Dtk_Entity &s)
Dtk_Constraint::TypePathMate
@ TypePathMate
Definition: util_ent_dtk.hpp:1251
Dtk_ModelDisplay::SectionParallelePlane
@ SectionParallelePlane
Definition: util_ent_dtk.hpp:1005
Dtk_Info::SetMatId
Dtk_ErrorStatus SetMatId(const Dtk_Int32 &inMatId)
Dtk_Info::SetPersistentName
Dtk_ErrorStatus SetPersistentName(Dtk_string inName)
Dtk_ModelDisplay::Clone
virtual Dtk_Object * Clone()
Definition: util_ent_dtk.hpp:979
Dtk_Entity::_copy
void _copy(const Dtk_Entity &s)
Dtk_ConstraintReference::_Copy
void _Copy(const Dtk_ConstraintReference &s)
Dtk_LayerFilterInfos::DtkDynamicType
Dtk_Int32 DtkDynamicType(const Dtk_Int32 &inId)
Retrieves the dynamic entity type.
Dtk_Info::YZPlane
@ YZPlane
Definition: util_ent_dtk.hpp:134
Dtk_Constraint::GetValue
Dtk_ErrorStatus GetValue(const ConstraintValueTypeEnum &inValue, Dtk_Val &outValue, Dtk_Int32 &outEnableLowerLimit, Dtk_Double64 &outLowerLimit, Dtk_Int32 &outEnableUpperLimit, Dtk_Double64 &outUpperLimit) const
Get a Value of the Constraint .
Dtk_Info::AddMaterial
Dtk_ErrorStatus AddMaterial(const Dtk_MaterialPtr &inMaterial)
Dtk_ModelDisplay::GetCamera
const Dtk_CameraPtr & GetCamera() const
Retrieves the Dtk_ModelDisplay camera - read only -.
Dtk_Info::SetOccurrenceDataFlag
Dtk_ErrorStatus SetOccurrenceDataFlag()
Dtk_ColorInfosSet::GetColorID
Dtk_ErrorStatus GetColorID(const Dtk_Size_t inColorPos, Dtk_ID &outColorReadID) const
Gets the ColorID giving its number.
Dtk_LayerInfosSet::DtkDynamicType
Dtk_Int32 DtkDynamicType(const Dtk_Int32 &inId)
Retrieves the dynamic entity type.
Dtk_ModelDisplay::SetVisibleLayers
void SetVisibleLayers(const Dtk_tab< Dtk_Int32 > &inVisibleLayers)
Dtk_Info::create
static Dtk_SmartPtr< Dtk_Info > create(const Dtk_Info &in)
Calls copy constructor to allocate a new object.
dtk_transfo.hpp
Dtk_Info::SetLayer
Dtk_ErrorStatus SetLayer(const Dtk_Int32 &inLayer)
Dtk_Info::GetMaterial
Dtk_MaterialPtr GetMaterial() const
Dtk_LayerInfosSet::Layer::IsFlaggedAs
bool IsFlaggedAs(Status in) const
Definition: util_ent_dtk.hpp:547
Dtk_pnt
This is a mathematical point class.
Definition: dtk_pnt.hpp:20
Dtk_MaterialPtr
Dtk_SmartPtr< Dtk_material > Dtk_MaterialPtr
Definition: util_ent_dtk.hpp:21
Dtk_ColorInfosSetPtr
Dtk_SmartPtr< Dtk_ColorInfosSet > Dtk_ColorInfosSetPtr
Definition: util_ent_dtk.hpp:421
type_detk
type_detk
Definition: define.h:21
Dtk_Constraint::Dtk_Constraint
Dtk_Constraint(const Dtk_Constraint &p)
Dtk_ConstraintReference::_Reset
void _Reset()
Dtk_Info::SetColor
Dtk_ErrorStatus SetColor(const Dtk_RGB &inColor)
Dtk_Info::GetFormFlag
int GetFormFlag() const
DTK_PT_FULLSQUARE
@ DTK_PT_FULLSQUARE
Definition: util_ent_dtk.hpp:32
Dtk_Info::GetMatId
int GetMatId() const
Dtk_Constraint::ValueTypeOpposite
@ ValueTypeOpposite
Definition: util_ent_dtk.hpp:1159
Dtk_ColorInfosSet::AddColor
Dtk_Size_t AddColor(const Dtk_ID inColorReadId, const Dtk_string &inColorName, const Dtk_RGB &inColorDef)
Add Color definition.
Dtk_Constraint::GetConstraintReference
const Dtk_tab< Dtk_ConstraintReferencePtr > & GetConstraintReference() const
Get all ConstraintReferences of the Constraint.
Dtk_ModelDisplay::SectionTypeEnum
SectionTypeEnum
Definition: util_ent_dtk.hpp:1002
Dtk_FontLineType
Dtk_FontLineType
This is a set of line styles.
Definition: util_ent_dtk.hpp:45
Dtk_LayerFilterInfos
This class is used by Dtk_LayerInfosSet to represent a layer filter : its name, description,...
Definition: util_ent_dtk.hpp:436
util_stl_dtk.hpp
dtk
Definition: span.hpp:10
Dtk_AxisSystem::GetMatrix
const Dtk_transfo & GetMatrix() const
Get the Matrix of the AxisSystem.
Dtk_Constraint::get_type_detk
type_detk get_type_detk() const
Definition: util_ent_dtk.hpp:1364
Dtk_Info::ListAllAttributes
Dtk_ErrorStatus ListAllAttributes(Dtk_tab< Dtk_string > &tab_keys) const
Dtk_LayerInfosSet::Layer::GetID
Dtk_ID GetID() const
Definition: util_ent_dtk.hpp:545
Dtk_ConstraintReferencePtr
Dtk_SmartPtr< Dtk_ConstraintReference > Dtk_ConstraintReferencePtr
Definition: util_ent_dtk.hpp:426
Dtk_ColorInfosSet::Dtk_ColorInfosSet
Dtk_ColorInfosSet(const Dtk_Size_t inNumColors)
Dtk_ModelDisplay::SectionBody
@ SectionBody
Definition: util_ent_dtk.hpp:1007
Dtk_Info::SetFontId
Dtk_ErrorStatus SetFontId(const Dtk_Int32 &inFontId)
Dtk_LayerFilterInfos::~Dtk_LayerFilterInfos
~Dtk_LayerFilterInfos()
Dtk_ConstraintReference::get_type_detk
type_detk get_type_detk() const
Definition: util_ent_dtk.hpp:1120
util_ptr_dtk.hpp
Dtk_ColorInfosSet::SetColorName
Dtk_ErrorStatus SetColorName(const Dtk_Size_t inColorPos, const Dtk_string &inColorName)
Sets the Color Name giving its number.
define.h
Dtk_Info::ListAllAttributesWithVal
Dtk_ErrorStatus ListAllAttributesWithVal(Dtk_tab< Dtk_pair< Dtk_string, Dtk_Val > > &tab) const
Dtk_LayerFilterInfos::GetName
void GetName(Dtk_string &outLayerFilterName) const
Retrieves layer filter name.
Dtk_Entity::PrepareTransfo
virtual void PrepareTransfo()
Dtk_LayerInfosSet::Clone
virtual Dtk_Object * Clone()
Definition: util_ent_dtk.hpp:567
Dtk_ConstraintReference::Transform
Dtk_ErrorStatus Transform(const Dtk_transfo &inTransfo)
Applies a transformation matrix to the entity. //!
Dtk_Constraint::TypeProfileCenter
@ TypeProfileCenter
Definition: util_ent_dtk.hpp:1254
Dtk_Info::SetPhysicalMaterialInfosId
Dtk_ErrorStatus SetPhysicalMaterialInfosId(const Dtk_ID &inMaterialId)
DTK_TYPE_CONSTRAINT_REFERENCE
@ DTK_TYPE_CONSTRAINT_REFERENCE
Definition: define.h:600
Dtk_PointType
Dtk_PointType
Definition: util_ent_dtk.hpp:25
Dtk_Constraint::TypeOrientAngle
@ TypeOrientAngle
Definition: util_ent_dtk.hpp:1248
DTK_NO_PATTERN
@ DTK_NO_PATTERN
Definition: util_ent_dtk.hpp:46
DTK_LONG_DASHED
@ DTK_LONG_DASHED
Definition: util_ent_dtk.hpp:58
Dtk_Constraint::TypeDistance
@ TypeDistance
Definition: util_ent_dtk.hpp:1235
Dtk_tab< Dtk_string >
Dtk_LayerInfosSet::Layer::GetFatherID
Dtk_ID GetFatherID() const
Definition: util_ent_dtk.hpp:546
Dtk_Info::GetCurveLineType
Dtk_FontLineType GetCurveLineType() const
Retrieves the curve LineType - for curve entities -.
Dtk_Preview::DtkDynamicCast
static Dtk_Preview * DtkDynamicCast(Dtk_Object *s)
Dtk_Info::AddPhysicalMaterialInfos
Dtk_ErrorStatus AddPhysicalMaterialInfos(const Dtk_PhysicalMaterialInfosPtr &inMaterial)
Dtk_Preview::Dtk_Preview
Dtk_Preview()
DTK_PT_BIGFULLCIRCLE
@ DTK_PT_BIGFULLCIRCLE
Definition: util_ent_dtk.hpp:36
Dtk_ConstraintPtr
Dtk_SmartPtr< Dtk_Constraint > Dtk_ConstraintPtr
Definition: util_ent_dtk.hpp:425
Dtk_LayerInfosSet::Layer::FlagAs
void FlagAs(Status in)
Definition: util_ent_dtk.hpp:548
Dtk_Info::GetConfigurationName
Dtk_string GetConfigurationName() const
Dtk_Constraint::GetNumberOfConstraintValues
Dtk_Size_t GetNumberOfConstraintValues()
Get the number of Dtk_Constraint::_ConstraintValue in the constraint.
Dtk_ColorInfosSet
This is the Color Info Set class. This is the read color definition Class. It gathers all information...
Definition: util_ent_dtk.hpp:728
Dtk_AxisSystem::get_type_detk
type_detk get_type_detk() const
Definition: util_ent_dtk.hpp:934
DTK_TYPE_CONSTRAINT
@ DTK_TYPE_CONSTRAINT
Definition: define.h:599
Dtk_Preview::Dtk_Preview
Dtk_Preview(Dtk_Preview const &in)
Dtk_ModelDisplay::IsActivated
Dtk_bool IsActivated() const
Tells if the Dtk_ModelDisplay is activated or not - read only -.
Dtk_Constraint::_ConstraintValue::_ValueLower
Dtk_Double64 _ValueLower
Definition: util_ent_dtk.hpp:1212
Dtk_Info::DtkDynamicType
int DtkDynamicType(const Dtk_Int32 &inId)
Dtk_Info::SetIsUpToDate
void SetIsUpToDate(const Dtk_bool isUpToDate)
Set if current object is up to date or not.
DTK_PT_BIGFULLSQUARE
@ DTK_PT_BIGFULLSQUARE
Definition: util_ent_dtk.hpp:37
Dtk_LayerInfosSet::Layer::m_FatherID
Dtk_ID m_FatherID
Definition: util_ent_dtk.hpp:529
Dtk_Info::GetOccurrenceDataFlag
bool GetOccurrenceDataFlag() const
Retrieves the OccurrenceData flag.
Dtk_Info::MandatoryFlag
MandatoryFlag
Definition: util_ent_dtk.hpp:131
Dtk_Constraint::_Init
void _Init()
Dtk_Entity::Transform
virtual Dtk_ErrorStatus Transform(const Dtk_transfo &inTransfo)=0
Dtk_ColorInfosSet::_Private
Dtk_Handle * _Private
Definition: util_ent_dtk.hpp:731
Dtk_Constraint::~Dtk_Constraint
virtual ~Dtk_Constraint()
Dtk_Info::ZXPlane
@ ZXPlane
Definition: util_ent_dtk.hpp:135
Dtk_ColorInfosSet::Dtk_ColorInfosSet
Dtk_ColorInfosSet(const Dtk_ColorInfosSet &s)
Dtk_Info::GetBuildingInfosIds
Dtk_tab< Dtk_Int32 > GetBuildingInfosIds() const
Dtk_ColorInfosSet::get_type_detk
type_detk get_type_detk() const
Definition: util_ent_dtk.hpp:756
Dtk_Info::SetBuildingInfosIds
Dtk_ErrorStatus SetBuildingInfosIds(const Dtk_tab< Dtk_Int32 > inBuildingInfos)
Dtk_Constraint::TypeCoincidence
@ TypeCoincidence
Definition: util_ent_dtk.hpp:1233
Dtk_ColorInfosSet::GetColorName
Dtk_ErrorStatus GetColorName(const Dtk_Size_t inColorPos, Dtk_string &outColorName) const
Gets the Color Name giving its number.
Dtk_Info::GetlayerList
Dtk_tab< Dtk_Int32 > GetlayerList() const
Retrieves the layers in which the entity is assigned.
Dtk_ModelDisplay::SectionPlaneList
@ SectionPlaneList
Definition: util_ent_dtk.hpp:1004
Dtk_string_compare::operator()
bool operator()(const Dtk_string &s1, const Dtk_string &s2) const
Definition: util_ent_dtk.hpp:93
Dtk_Info::SetRefEntityFlag
Dtk_ErrorStatus SetRefEntityFlag(const Dtk_Int32 &inRefEntityFlag)
Dtk_ColorInfosSet::SetColorID
Dtk_ErrorStatus SetColorID(const Dtk_Size_t inColorPos, const Dtk_ID &inColorReadID)
Sets the ColorID giving its number.
Dtk_Constraint::SetValue
void SetValue(const ConstraintValueTypeEnum &inValueType, Dtk_Val &inValue, const Dtk_Int32 &inEnableLowerLimit, const Dtk_Double64 &inLowerLimit, const Dtk_Int32 &inEnableUpperLimit, const Dtk_Double64 &inUpperLimit)
Set a Value of the Constraint .
Dtk_Object
Definition: dtk_object.hpp:8
Dtk_Constraint::_Reset
void _Reset()
Dtk_Constraint::Create
static Dtk_SmartPtr< Dtk_Constraint > Create()
Calls default constructor to allocate a new object.
Dtk_LayerInfosSet::Layer::Layer
Layer(Dtk_ID id, Dtk_string name=Dtk_string(), Dtk_ID fatherID=static_cast< Dtk_ID >(-1))
Definition: util_ent_dtk.hpp:539
Dtk_ColorInfosSet::DtkDynamicCast
static Dtk_ColorInfosSet * DtkDynamicCast(Dtk_Object *s)
Performs a dynamic cast - doesn't need RTTI -.
Dtk_Info::GetPhysicalMaterialInfosId
Dtk_ID GetPhysicalMaterialInfosId() const
Retrieves the Id of MaterialInfos of the entity in The Dtk_API table.
Dtk_Constraint::TypeLimit
@ TypeLimit
Definition: util_ent_dtk.hpp:1242
Dtk_ModelDisplay::Dtk_ModelDisplay
Dtk_ModelDisplay()
DTK_PT_DIAMOND
@ DTK_PT_DIAMOND
Definition: util_ent_dtk.hpp:40
Dtk_ModelDisplay::Transform
Dtk_ErrorStatus Transform(const Dtk_transfo &inTransfo)
Applies a transformation matrix to the entity. //!
Dtk_ConstraintReference::Create
static Dtk_SmartPtr< Dtk_ConstraintReference > Create()
Calls default constructor to allocate a new object.
Dtk_Info::_typeID
@ _typeID
Definition: util_ent_dtk.hpp:117
Dtk_ConstraintReference::DtkDynamicType
int DtkDynamicType(const int &inId)
Dtk_Info::GetCurveLineTypeDefinitionId
Dtk_ID GetCurveLineTypeDefinitionId() const
Retrieves the Id of Dtk_LineTypeDefinition of the entity in The Dtk_API table.
Dtk_AxisSystem::conv_ptr
virtual void conv_ptr(Dtk_AxisSystem **s)
Definition: util_ent_dtk.hpp:938
Dtk_MetaData
This is the Dtk_MetaData Class. The Dtk_MetaDataPtr object is used to store any additional informatio...
Definition: dtk_metadata.hpp:23
Dtk_Info::GetRenderInfosId
Dtk_ID GetRenderInfosId() const
Retrieves the Id of RenderInfos of the entity in The Dtk_API table.
Dtk_Constraint::_ConstraintValue::_EnableLower
Dtk_Int32 _EnableLower
Definition: util_ent_dtk.hpp:1210
Dtk_Constraint::AddConstraintReference
void AddConstraintReference(const Dtk_ConstraintReferencePtr &in)
Add a ConstraintReference to this Constraint .
Dtk_Entity::~Dtk_Entity
virtual ~Dtk_Entity()
Dtk_ColorInfosSet::GetColorNameById
Dtk_ErrorStatus GetColorNameById(const Dtk_ID inColorReadId, Dtk_string &outColorName) const
Gets the Color Name giving the ID found iby infos->GetColorID().
Dtk_LayerInfosSet::Layer::Layer
Layer()
Definition: util_ent_dtk.hpp:534
Dtk_ModelDisplay::SetSectionInformation
void SetSectionInformation(const SectionTypeEnum &inSectionType, const Dtk_Int32 &inIsLocked=DTK_FALSE, const Dtk_Double64 &inThickness=0.0) const
Set the type of the section on the Dtk_ModelDisplay.
Dtk_Info::SetDefaultChildIndex
Dtk_ErrorStatus SetDefaultChildIndex(const Dtk_Int32 &inIndex)
Dtk_Info::SetUuid
Dtk_ErrorStatus SetUuid(const Dtk_UUID &inUuid)
Dtk_LayerFilterInfos::GetSelectedLayers
void GetSelectedLayers(Dtk_tab< Dtk_Size_t > &outSelectedLayerIndexes) const
Retrieves all the selected layers into the layer filter.
Dtk_Info::GetId
int GetId() const
Dtk_Preview::GetStream
char * GetStream()
Dtk_Constraint::_Private
Dtk_Handle * _Private
Definition: util_ent_dtk.hpp:1378
Dtk_Constraint::TypeTangent
@ TypeTangent
Definition: util_ent_dtk.hpp:1261
Dtk_ColorInfosSet::Create
static Dtk_ColorInfosSetPtr Create(const Dtk_Size_t inNumColors)
Calls a constructor to allocate a new object.
Dtk_LayerFilterInfos::Dtk_LayerFilterInfos
Dtk_LayerFilterInfos(Dtk_LayerFilterInfos &&s)
Move constructor.
Dtk_Constraint::TypeScrew
@ TypeScrew
Definition: util_ent_dtk.hpp:1256
Dtk_Info::_copy
void _copy(const Dtk_Info &s)
Dtk_Entity::operator=
Dtk_Entity & operator=(Dtk_Entity &&s) DTK_NOEXCEPT
Dtk_Info::GetFontId
int GetFontId() const
Dtk_Info::SetUse
Dtk_ErrorStatus SetUse(const Dtk_Int32 &inUse)
Dtk_RGB
Definition: dtk_rgb.hpp:7
Dtk_Info::SetColor
Dtk_ErrorStatus SetColor(const int &R, const int &G, const int &B)
Dtk_Preview::Dtk_Preview
Dtk_Preview(const char *inStream, const Dtk_Int32 inSizeStream)
Dtk_Info::create
static Dtk_SmartPtr< Dtk_Info > create()
Calls default constructor to allocate a new object.
Dtk_AxisSystem::Transform
Dtk_ErrorStatus Transform(const Dtk_transfo &inTransfo)
Applies a transformation matrix to the entity. //!
span.hpp
Dtk_Constraint::TypeGear
@ TypeGear
Definition: util_ent_dtk.hpp:1240
Dtk_LayerFilterInfos::_Private
Dtk_Handle * _Private
Definition: util_ent_dtk.hpp:438
Dtk_ModelDisplay::DtkDynamicCast
static Dtk_ModelDisplay * DtkDynamicCast(Dtk_Object *s)
Performs a dynamic cast - doesn't need RTTI -.
Dtk_Info::~Dtk_Info
~Dtk_Info()
Dtk_Info::GetSubordFlag
int GetSubordFlag() const
Dtk_dir
This is a mathematical direction class.
Definition: dtk_dir.hpp:14
Dtk_ModelDisplay::Dtk_ModelDisplay
Dtk_ModelDisplay(const Dtk_ModelDisplay &s)
Dtk_Constraint::operator=
Dtk_Constraint & operator=(const Dtk_Constraint &p)
Dtk_Entity::Dtk_Entity
Dtk_Entity(const Dtk_Entity &s)
Dtk_Info::SetSubordFlag
Dtk_ErrorStatus SetSubordFlag(const Dtk_Int32 &inSubordFlag)
Dtk_string_compare
Definition: util_ent_dtk.hpp:92
Dtk_LayerInfosSet::Layer::m_ID
Dtk_ID m_ID
Definition: util_ent_dtk.hpp:528
Dtk_Constraint::_ConstraintValue::_EnableUpper
Dtk_Int32 _EnableUpper
Definition: util_ent_dtk.hpp:1211
Dtk_LayerInfosSet::Layer::GetName
Dtk_string const & GetName() const
Definition: util_ent_dtk.hpp:544
Dtk_Preview::Create
static Dtk_PreviewPtr Create(const char *inStream, const Dtk_Int32 inSizeStream)
Calls full featured constructor to allocate a new object.
Dtk_AxisSystem::SetIsHidden
void SetIsHidden()
Set the hidden status.
Dtk_Constraint::TypeLinear
@ TypeLinear
Definition: util_ent_dtk.hpp:1243
Dtk_Constraint::Dtk_Constraint
Dtk_Constraint(const ConstraintTypeEnum &inType)
Dtk_Constraint::TypeLock
@ TypeLock
Definition: util_ent_dtk.hpp:1246
Dtk_LayerFilterInfos::GetDescription
void GetDescription(Dtk_string &outLayerFilterDescription) const
Retrieves layer filter description.
Dtk_Info::FindAttribute
Dtk_Val const * FindAttribute(const Dtk_string &name) const
Dtk_Constraint::TypeRackPinion
@ TypeRackPinion
Definition: util_ent_dtk.hpp:1255
dtk_object.hpp
Dtk_Constraint::_ConstraintValue::_Value
Dtk_Val _Value
Definition: util_ent_dtk.hpp:1209
Dtk_Entity::_init
void _init()
Dtk_AxisSystem::GetIsHidden
int GetIsHidden() const
Get the hidden status.
Dtk_AxisSystem
This is the Dtk_AxisSystem class.
Definition: util_ent_dtk.hpp:878
Dtk_Constraint::TypeCenter
@ TypeCenter
Definition: util_ent_dtk.hpp:1229
Dtk_Constraint::Transform
Dtk_ErrorStatus Transform(const Dtk_transfo &inTransfo)
Applies a transformation matrix to the entity. //!
Dtk_AxisSystem::SetDefaultStatus
void SetDefaultStatus(Dtk_bool inDefaultStatus)
Set the default status.
Dtk_Info::_init
void _init()
DTK_NOEXCEPT
#define DTK_NOEXCEPT
Definition: config.hpp:30
Dtk_Constraint::ConstraintTypeEnum
ConstraintTypeEnum
Definition: util_ent_dtk.hpp:1219
Dtk_Entity::info
Dtk_InfoPtr & info()
Dtk_Entity
Definition: util_ent_dtk.hpp:371
Dtk_ModelDisplay::DtkDynamicType
Dtk_Int32 DtkDynamicType(const Dtk_Int32 &inId)
Retrieves the dynamic entity type.