  | 
  
    DATAKIT API
    V2025.4
    
   
   | 
           
 | 
 
 
 
 
This is the Dtk_Constraint class.  
 More...
 | 
| enum   | ConstraintOrientationTypeEnum {  
  ValueTypeUndefined = 0, 
ValueTypeSame, 
ValueTypeOpposite, 
ValueTypeInternal, 
 
  ValueTypeExternal
 
 } | 
|   | 
| enum   | ConstraintTypeEnum {  
  TypeUnknown = 0, 
TypeAlign, 
TypeAngle, 
TypeBond, 
 
  TypeCam, 
TypeCenter, 
TypeConcentric, 
TypeCoincidence, 
 
  TypeDistance, 
TypeFit, 
TypeFix, 
TypeGear, 
 
  TypeHinge, 
TypeLimit, 
TypeLinear, 
TypeLinearCoupler, 
 
  TypeLock, 
TypeOrientAngle, 
TypeParallel, 
TypePathMate, 
 
  TypePerpendicular, 
TypeProfileCenter, 
TypeRackPinion, 
TypeScrew, 
 
  TypeSlot, 
TypeSymmetric, 
TypeTangent, 
TypeTouch, 
 
  TypeUniversalJoint, 
TypeWidth
 
 } | 
|   | 
| enum   | ConstraintValueTypeEnum {  
  ValueTypeUnknown = 0, 
ValueTypeAngle, 
ValueTypeDistance, 
ValueTypePosition, 
 
  ValueTypeRotation, 
ValueTypeOrientation
 
 } | 
|   | 
 | 
| virtual Dtk_ErrorStatus  | _Store (void *) | 
|   | 
| void  | AddConstraintReference (const Dtk_ConstraintReferencePtr &in) | 
|   | Add a ConstraintReference to this Constraint .  More...
  | 
|   | 
| virtual void  | conv_ptr (Dtk_Constraint **s) | 
|   | 
|   | Dtk_Constraint (const ConstraintTypeEnum &inType) | 
|   | 
|   | Dtk_Constraint (const Dtk_Constraint &p) | 
|   | 
| int  | DtkDynamicType (const int &inId) | 
|   | 
| virtual void  | dump (FILE *file=stdout) | 
|   | 
| Dtk_InfoPtr  | get_info () const | 
|   | 
| type_detk  | get_type_detk () const | 
|   | 
| const Dtk_tab< Dtk_ConstraintReferencePtr > &  | GetConstraintReference () const | 
|   | Get all ConstraintReferences of the Constraint.  More...
  | 
|   | 
| const Dtk_ConstraintReferencePtr &  | GetConstraintReference (const Dtk_Size_t &index) const | 
|   | Get the Dtk_ConstraintReference at the specified index.  More...
  | 
|   | 
| const ConstraintTypeEnum &  | GetConstraintType () const | 
|   | Get the type of the Constraint .  More...
  | 
|   | 
| const _ConstraintValue &  | GetConstraintValue (const Dtk_Size_t &index) const | 
|   | Get the Dtk_Constraint::_ConstraintValue at the specified index.  More...
  | 
|   | 
| const Dtk_ID &  | GetID () const | 
|   | Get Internal UniqueID.  More...
  | 
|   | 
| Dtk_Size_t  | GetNumberOfConstraintReferences () const | 
|   | Get the number of Dtk_ConstraintReference in the constraint.  More...
  | 
|   | 
| Dtk_Size_t  | GetNumberOfConstraintValues () | 
|   | Get the number of Dtk_Constraint::_ConstraintValue in the constraint.  More...
  | 
|   | 
| virtual Dtk_Size_t  | GetSize () const | 
|   | 
| Dtk_ErrorStatus  | GetValue (const ConstraintValueTypeEnum &inValue, Dtk_Val &outValue) const | 
|   | 
| 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 .  More...
  | 
|   | 
| Dtk_tab< ConstraintValueTypeEnum >  | GetValuesTypes () const | 
|   | Get all types of values in the Constraint.  More...
  | 
|   | 
| Dtk_InfoPtr &  | info () | 
|   | 
| Dtk_Constraint &  | operator= (const Dtk_Constraint &p) | 
|   | 
| virtual void  | PrepareTransfo () | 
|   | 
| void  | SetConstraintType (const ConstraintTypeEnum &in) | 
|   | Set the type of the Constraint .  More...
  | 
|   | 
| void  | SetValue (const ConstraintValueTypeEnum &inValueType, Dtk_Val &inValue) | 
|   | 
| 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 .  More...
  | 
|   | 
| Dtk_ErrorStatus  | Transform (const Dtk_transfo &inTransfo) | 
|   | Applies a transformation matrix to the entity. //!  More...
  | 
|   | 
This is the Dtk_Constraint class. 
A Dtk_Constraint contains the AxisSystem definition which defines by its Name, statut and the Matrix
This class lets you use Dtk_Constraint. 
- See also
 - Use Dtk_ConstraintPtr class to handle it. 
 
 
◆ anonymous enum
◆ anonymous enum
◆ ConstraintOrientationTypeEnum
| Enumerator | 
|---|
| ValueTypeUndefined  |  | 
| ValueTypeSame  |  | 
| ValueTypeOpposite  |  | 
| ValueTypeInternal  |  | 
| ValueTypeExternal  |  | 
 
 
◆ ConstraintTypeEnum
| Enumerator | 
|---|
| TypeUnknown  |  | 
| TypeAlign  | 
  | 
| TypeAngle  | 
  | 
| TypeBond  | 
  | 
| TypeCam  |  | 
| TypeCenter  | 
  | 
| TypeConcentric  | 
  | 
| TypeCoincidence  | 
  | 
| TypeDistance  | 
  | 
| TypeFit  | 
  | 
| TypeFix  | 
  | 
| TypeGear  |  | 
| TypeHinge  |  | 
| TypeLimit  |  | 
| TypeLinear  |  | 
| TypeLinearCoupler  |  | 
| TypeLock  | 
  | 
| TypeOrientAngle  | 
  | 
| TypeParallel  | 
  | 
| TypePathMate  |  | 
| TypePerpendicular  | 
  | 
| TypeProfileCenter  |  | 
| TypeRackPinion  |  | 
| TypeScrew  |  | 
| TypeSlot  |  | 
| TypeSymmetric  | 
  | 
| TypeTangent  | 
  | 
| TypeTouch  | 
  | 
| TypeUniversalJoint  |  | 
| TypeWidth  |  | 
 
 
◆ ConstraintValueTypeEnum
| Enumerator | 
|---|
| ValueTypeUnknown  |  | 
| ValueTypeAngle  |  | 
| ValueTypeDistance  |  | 
| ValueTypePosition  |  | 
| ValueTypeRotation  |  | 
| ValueTypeOrientation  |  | 
 
 
◆ Dtk_Constraint() [1/3]
◆ Dtk_Constraint() [2/3]
◆ Dtk_Constraint() [3/3]
  
  
      
        
          | Dtk_Constraint::Dtk_Constraint  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
protected   | 
  
 
 
◆ ~Dtk_Constraint()
  
  
      
        
          | virtual Dtk_Constraint::~Dtk_Constraint  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
protectedvirtual   | 
  
 
 
◆ _Copy()
◆ _copy()
◆ _init()
  
  
      
        
          | void Dtk_Entity::_init  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
protectedinherited   | 
  
 
 
◆ _Init()
  
  
      
        
          | void Dtk_Constraint::_Init  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
protected   | 
  
 
 
◆ _reset()
  
  
      
        
          | void Dtk_Entity::_reset  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
protectedinherited   | 
  
 
 
◆ _Reset()
  
  
      
        
          | void Dtk_Constraint::_Reset  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
protected   | 
  
 
 
◆ _Store()
Reimplemented in Dtk_Shell, Dtk_Body, Dtk_Lump, Dtk_Volume, Dtk_Face, Dtk_Loop, Dtk_Coedge, Dtk_Edge, Dtk_Vertex, Dtk_TransformedSurface, Dtk_FilletSurface, Dtk_OffsetSurface, Dtk_SphericalSurface, Dtk_ToroidalSurface, Dtk_ConicalSurface, Dtk_CylindricalSurface, Dtk_RuledSurface, Dtk_LinearExtrusionSurface, Dtk_StandardRevolutionSurface, Dtk_RevolutionSurface, Dtk_PlaneSurface, Dtk_NurbsSurface, Dtk_Surface, Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Conic, Dtk_Line, Dtk_Polyline, Dtk_NurbsCurve, Dtk_Curve, and Dtk_Point.
 
 
◆ AddConstraintReference()
Add a ConstraintReference to this Constraint . 
 
 
◆ Clone()
◆ ConstraintOrientationTypeEnumToString()
◆ ConstraintTypeEnumToString()
 1147           case TypeCam:                  
return L
"TypeCam";
 
 1152           case TypeFit:                  
return L
"TypeFit";
 
 1153           case TypeFix:                  
return L
"TypeFix";
 
 
 
 
◆ ConstraintValueTypeEnumToString()
◆ conv_ptr()
◆ Create()
Calls default constructor to allocate a new object. 
 
 
◆ DtkDynamicCast()
◆ DtkDynamicType()
  
  
      
        
          | int Dtk_Constraint::DtkDynamicType  | 
          ( | 
          const int &  | 
          inId | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
 
◆ dump()
  
  
      
        
          | virtual void Dtk_Object::dump  | 
          ( | 
          FILE *  | 
          file = stdout | ) | 
           | 
         
       
   | 
  
virtualinherited   | 
  
 
 
◆ get_info()
◆ get_type_detk()
  
  
      
        
          | type_detk Dtk_Constraint::get_type_detk  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
virtual   | 
  
 
- Returns
 - The type of the entity type - DTK_TYPE_CONSTRAINT - 
 
Implements Dtk_Entity.
 
 
◆ GetConstraintReference() [1/2]
Get all ConstraintReferences of the Constraint. 
- Returns
 - A tab with all the ConstraintReferences of this Constraint. 
 
 
 
◆ GetConstraintReference() [2/2]
◆ GetConstraintType()
Get the type of the Constraint . 
- Returns
 - the type of this Constraint . 
 
 
 
◆ GetConstraintValue()
◆ GetID()
  
  
      
        
          | const Dtk_ID& Dtk_Entity::GetID  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inherited   | 
  
 
Get Internal UniqueID. 
- Returns
 - InternalID 
 
 
 
◆ GetNumberOfConstraintReferences()
      
        
          | Dtk_Size_t Dtk_Constraint::GetNumberOfConstraintReferences  | 
          ( | 
           | ) | 
           const | 
        
      
 
 
◆ GetNumberOfConstraintValues()
      
        
          | Dtk_Size_t Dtk_Constraint::GetNumberOfConstraintValues  | 
          ( | 
           | ) | 
           | 
        
      
 
 
◆ GetSize()
Reimplemented from Dtk_Object.
Reimplemented in Dtk_Shell, Dtk_Body, Dtk_Lump, Dtk_Volume, Dtk_Face, Dtk_Loop, Dtk_Coedge, Dtk_Edge, Dtk_Vertex, Dtk_mesh, Dtk_TransformedSurface, Dtk_FilletSurface, Dtk_OffsetSurface, Dtk_SphericalSurface, Dtk_ToroidalSurface, Dtk_ConicalSurface, Dtk_CylindricalSurface, Dtk_RuledSurface, Dtk_LinearExtrusionSurface, Dtk_StandardRevolutionSurface, Dtk_RevolutionSurface, Dtk_PlaneSurface, Dtk_NurbsSurface, Dtk_Surface, Dtk_Hyperbola, Dtk_Parabola, Dtk_Ellipse, Dtk_Conic, Dtk_Line, Dtk_Polyline, Dtk_NurbsCurve, Dtk_Curve, and Dtk_Point.
 
 
◆ GetValue() [1/2]
◆ GetValue() [2/2]
Get a Value of the Constraint . 
- Returns
 - a Value of this Constraint . 
 
 
 
◆ GetValuesTypes()
Get all types of values in the Constraint. 
- Returns
 - All types of values contained in the Constraint. 
 
 
 
◆ info()
◆ operator=()
◆ PrepareTransfo()
  
  
      
        
          | virtual void Dtk_Entity::PrepareTransfo  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
virtualinherited   | 
  
 
 
◆ SetConstraintType()
Set the type of the Constraint . 
 
 
◆ SetValue() [1/2]
◆ SetValue() [2/2]
Set a Value of the Constraint . 
 
 
◆ Transform()
Applies a transformation matrix to the entity. //! 
- Parameters
 - 
  
    | inTransfo | The transformation matrix to apply.  | 
  
   
Implements Dtk_Entity.
 
 
◆ _Private
  
  
      
        
          | Dtk_Handle* Dtk_Constraint::_Private | 
         
       
   | 
  
protected   | 
  
 
 
◆ count_
  
  
      
        
          | unsigned long Dtk_Object::count_ | 
         
       
   | 
  
protectedinherited   | 
  
 
 
 
 
@ TypeFix
Definition: util_ent_dtk.hpp:1112
 
@ TypeSlot
Definition: util_ent_dtk.hpp:1130
 
@ TypeLinearCoupler
Definition: util_ent_dtk.hpp:1117
 
@ TypeWidth
Definition: util_ent_dtk.hpp:1138
 
@ TypeAlign
Definition: util_ent_dtk.hpp:1095
 
@ DTK_TYPE_ENTITY
Definition: define.h:468
 
@ ValueTypeSame
Definition: util_ent_dtk.hpp:1031
 
@ TypeSymmetric
Definition: util_ent_dtk.hpp:1132
 
@ TypeBond
Definition: util_ent_dtk.hpp:1099
 
@ ValueTypeInternal
Definition: util_ent_dtk.hpp:1033
 
@ TypeUnknown
Definition: util_ent_dtk.hpp:1093
 
@ DTK_TYPE_OBJECT
Definition: define.h:466
 
@ ValueTypeExternal
Definition: util_ent_dtk.hpp:1034
 
@ ValueTypeOrientation
Definition: util_ent_dtk.hpp:1056
 
@ ValueTypeDistance
Definition: util_ent_dtk.hpp:1053
 
@ ValueTypeAngle
Definition: util_ent_dtk.hpp:1052
 
@ ValueTypeRotation
Definition: util_ent_dtk.hpp:1055
 
@ TypeTouch
Definition: util_ent_dtk.hpp:1136
 
@ TypeAngle
Definition: util_ent_dtk.hpp:1097
 
@ TypePerpendicular
Definition: util_ent_dtk.hpp:1126
 
@ TypeHinge
Definition: util_ent_dtk.hpp:1114
 
@ TypeConcentric
Definition: util_ent_dtk.hpp:1104
 
@ TypeParallel
Definition: util_ent_dtk.hpp:1123
 
@ ValueTypePosition
Definition: util_ent_dtk.hpp:1054
 
@ TypeUniversalJoint
Definition: util_ent_dtk.hpp:1137
 
@ TypeFit
Definition: util_ent_dtk.hpp:1110
 
@ _typeID
Definition: util_ent_dtk.hpp:353
 
@ TypeCam
Definition: util_ent_dtk.hpp:1100
 
@ TypePathMate
Definition: util_ent_dtk.hpp:1124
 
@ ValueTypeOpposite
Definition: util_ent_dtk.hpp:1032
 
@ ValueTypeUndefined
Definition: util_ent_dtk.hpp:1030
 
@ TypeProfileCenter
Definition: util_ent_dtk.hpp:1127
 
@ _typeID
Definition: dtk_object.hpp:10
 
@ TypeOrientAngle
Definition: util_ent_dtk.hpp:1121
 
@ TypeDistance
Definition: util_ent_dtk.hpp:1108
 
@ DTK_TYPE_CONSTRAINT
Definition: define.h:610
 
@ TypeCoincidence
Definition: util_ent_dtk.hpp:1106
 
@ TypeLimit
Definition: util_ent_dtk.hpp:1115
 
@ ValueTypeUnknown
Definition: util_ent_dtk.hpp:1051
 
@ TypeTangent
Definition: util_ent_dtk.hpp:1134
 
@ TypeScrew
Definition: util_ent_dtk.hpp:1129
 
@ TypeGear
Definition: util_ent_dtk.hpp:1113
 
@ TypeLinear
Definition: util_ent_dtk.hpp:1116
 
@ TypeLock
Definition: util_ent_dtk.hpp:1119
 
@ TypeRackPinion
Definition: util_ent_dtk.hpp:1128
 
@ TypeCenter
Definition: util_ent_dtk.hpp:1102