  | 
  
    DATAKIT API
    V2025.4
    
   
   | 
           
 | 
 
 
 
 
This class graphically represents leader of annotations.
 It is part of Dtk_Annotation and Dtk_Dimension.  
 More...
 | 
| class   | ApplicationZone | 
|   | This is the application zone class. 
It is used to gather all application zone information.  More...
  | 
|   | 
| class   | ArrowHead | 
|   | This class graphically represents a leader head.  More...
  | 
|   | 
 | 
| enum   | IncludeOptions {  
  IncludeAll = -1, 
IncludeNone = 0, 
IncludeLeaderCurve = 1, 
IncludeLeaderArrowHead = 2, 
 
  IncludeLeaderExtensionLine = 4, 
IncludeLeaderApplicationZone = 8
 
 } | 
|   | 
| enum   | LeaderTerminatorTypeEnum {  
  TerminatorTypeNone = 0, 
TerminatorTypeOpenArrow, 
TerminatorTypeClosedArrow, 
TerminatorTypeFillArrow, 
 
  TerminatorTypeCrossArrow, 
TerminatorTypeCircle, 
TerminatorTypeFilledCircle, 
TerminatorTypeSquare, 
 
  TerminatorTypeFilledSquare, 
TerminatorTypeSlash, 
TerminatorTypeCrossedCircle, 
TerminatorTypeXCircle, 
 
  TerminatorTypeTriangle, 
TerminatorTypeFilledTriangle, 
TerminatorTypePlus, 
TerminatorTypeXCross, 
 
  TerminatorTypeIntegral, 
TerminatorTypeCircleCenter, 
TerminatorTypeDoubleOpenArrow, 
TerminatorTypeDoubleCloseArrow, 
 
  TerminatorTypeDoubleFillArrow, 
TerminatorTypeDoubleTriangle, 
TerminatorTypeTopOpenArrow, 
TerminatorTypeBottomOpenArrow, 
 
  TerminatorTypeTopFillArrow, 
TerminatorTypeBottomFillArrow, 
TerminatorTypeDoubleCrossArrow
 
 } | 
|   | Internal leader terminator type.  More...
  | 
|   | 
| enum   | LeaderTypeEnum { TypeUnknown = 0, 
TypeLinear, 
TypeAngular
 } | 
|   | Internal leader type - linear or angular -.  More...
  | 
|   | 
 | 
| static Dtk_LeaderPtr  | Create () | 
|   | Calls default constructor to allocate a new object.  More...
  | 
|   | 
| static Dtk_LeaderPtr  | Create (const Dtk_Double64 &inWidth, const Dtk_Double64 &inHeight, const Dtk_pnt &inArrowLocation, const Dtk_Double64 &inRadius, const LeaderTerminatorTypeEnum &inTerminatorType, const Dtk_pnt &inEndingPnt, const Dtk_pnt &inCenterPnt, const Dtk_bool &IsCounterClockwise) | 
|   | Angular leader constructor.  More...
  | 
|   | 
| static Dtk_LeaderPtr  | Create (const Dtk_Double64 &inWidth, const Dtk_Double64 &inHeight, const Dtk_pnt &inArrowLocation, const LeaderTerminatorTypeEnum &inTerminatorType, const Dtk_tab< Dtk_pnt > &inPntsArray) | 
|   | Linear leader constructor.  More...
  | 
|   | 
| static Dtk_LeaderPtr  | Create (const Dtk_Leader &s) | 
|   | Calls copy constructor to allocate a new object.  More...
  | 
|   | 
| static Dtk_LeaderPtr  | Create (Dtk_Leader &&s) | 
|   | Calls move constructor to allocate a new object.  More...
  | 
|   | 
| static Dtk_Leader *  | DtkDynamicCast (Dtk_Object *s) | 
|   | Performs a dynamic cast - doesn't need RTTI -.  More...
  | 
|   | 
| static Dtk_string  | LeaderTerminatorTypeEnumToString (const LeaderTerminatorTypeEnum &inEnum) | 
|   | 
 | 
| void  | _CommonAngularCtor (const Dtk_Double64 &inWidth, const Dtk_Double64 &inHeight, const Dtk_pnt &inArrowLocation, const Dtk_Double64 &inRadius, const LeaderTerminatorTypeEnum &inTerminatorType, const Dtk_pnt &inEndingPnt, const Dtk_pnt &inCenterPnt, const Dtk_bool &IsCounterClockwise) | 
|   | 
| void  | _CommonLinearCtor (const Dtk_Double64 &inWidth, const Dtk_Double64 &inHeight, const Dtk_pnt &inArrowLocation, const LeaderTerminatorTypeEnum &inTerminatorType, const Dtk_tab< Dtk_pnt > &inPntsArray) | 
|   | 
| virtual Dtk_Object *  | Clone () | 
|   | 
|   | Dtk_Leader () | 
|   | 
|   | Dtk_Leader (const Dtk_Double64 &inWidth, const Dtk_Double64 &inHeight, const Dtk_pnt &inArrowLocation, const Dtk_Double64 &inRadius, const LeaderTerminatorTypeEnum &inTerminatorType, const Dtk_pnt &inEndingPnt, const Dtk_pnt &inCenterPnt, const Dtk_bool &IsCounterClockwise) | 
|   | 
|   | Dtk_Leader (const Dtk_Double64 &inWidth, const Dtk_Double64 &inHeight, const Dtk_pnt &inArrowLocation, const LeaderTerminatorTypeEnum &inTerminatorType, const Dtk_tab< Dtk_pnt > &inPntsArray) | 
|   | 
|   | Dtk_Leader (const Dtk_Leader &in) | 
|   | 
|   | Dtk_Leader (Dtk_Leader &&in) DTK_NOEXCEPT | 
|   | 
| virtual  | ~Dtk_Leader () | 
|   | Destructor.  More...
  | 
|   | 
This class graphically represents leader of annotations.
 It is part of Dtk_Annotation and Dtk_Dimension. 
Its main curve (also called LeaderCurve), is represented using a Dtk_Polyline. The following schema indicated the points order to expect. 
 The first point of the Dtk_Polyline indicates the location of the ArrowHead / leader terminator. See the following schema for a simple representation of an ArrowHead, with a head of type Dtk_Leader::TerminatorTypeOpenArrow. 
 In Datakit representation, a leader can also have an extension line, that usually points from the annotation to the model geometry. 
 Dtk_Dimension is the most common annotation having leaders with an extension line, but it is also possible for a Dtk_Roughness or any other kind of Dtk_Annotation. 
- Warning
 - To represent a stand-alone extension line, it is possible to encounter a leader with an extension line, and no main curve. 
 
- See also
 - Use Dtk_LeaderPtr class to handle it. 
 
 
◆ anonymous enum
◆ anonymous enum
◆ IncludeOptions
| Enumerator | 
|---|
| IncludeAll  |  | 
| IncludeNone  |  | 
| IncludeLeaderCurve  |  | 
| IncludeLeaderArrowHead  |  | 
| IncludeLeaderExtensionLine  |  | 
| IncludeLeaderApplicationZone  |  | 
 
 
◆ LeaderTerminatorTypeEnum
Internal leader terminator type. 
| Enumerator | 
|---|
| TerminatorTypeNone  | 
  | 
| TerminatorTypeOpenArrow  | 
  | 
| TerminatorTypeClosedArrow  | 
  | 
| TerminatorTypeFillArrow  | 
  | 
| TerminatorTypeCrossArrow  | 
  | 
| TerminatorTypeCircle  | 
  | 
| TerminatorTypeFilledCircle  | 
  | 
| TerminatorTypeSquare  | 
  | 
| TerminatorTypeFilledSquare  | 
  | 
| TerminatorTypeSlash  | 
  | 
| TerminatorTypeCrossedCircle  | 
  | 
| TerminatorTypeXCircle  | 
  | 
| TerminatorTypeTriangle  | 
  | 
| TerminatorTypeFilledTriangle  | 
  | 
| TerminatorTypePlus  | 
  | 
| TerminatorTypeXCross  | 
  | 
| TerminatorTypeIntegral  | 
  | 
| TerminatorTypeCircleCenter  | 
  | 
| TerminatorTypeDoubleOpenArrow  | 
  | 
| TerminatorTypeDoubleCloseArrow  | 
  | 
| TerminatorTypeDoubleFillArrow  | 
  | 
| TerminatorTypeDoubleTriangle  | 
  | 
| TerminatorTypeTopOpenArrow  | 
  | 
| TerminatorTypeBottomOpenArrow  | 
  | 
| TerminatorTypeTopFillArrow  | 
  | 
| TerminatorTypeBottomFillArrow  | 
  | 
| TerminatorTypeDoubleCrossArrow  | 
  | 
 
 
◆ LeaderTypeEnum
Internal leader type - linear or angular -. 
| Enumerator | 
|---|
| TypeUnknown  |  | 
| TypeLinear  |  | 
| TypeAngular  |  | 
 
 
◆ Dtk_Leader() [1/5]
  
  
      
        
          | Dtk_Leader::Dtk_Leader  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
protected   | 
  
 
 
◆ Dtk_Leader() [2/5]
◆ Dtk_Leader() [3/5]
◆ Dtk_Leader() [4/5]
◆ Dtk_Leader() [5/5]
◆ ~Dtk_Leader()
  
  
      
        
          | virtual Dtk_Leader::~Dtk_Leader  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
protectedvirtual   | 
  
 
 
◆ _CommonAngularCtor()
◆ _CommonLinearCtor()
◆ Clone()
◆ ConvertToGeom()
Converts the Dtk_Leader to geometrical elements. 
- Parameters
 - 
  
    | outGeomsArray | Geometrical elements array  | 
  
   
 
 
◆ Create() [1/5]
Calls default constructor to allocate a new object. 
 
 
◆ Create() [2/5]
Angular leader constructor. 
- Parameters
 - 
  
    | inWidth | Arrow width  | 
    | inHeight | Arrow height  | 
    | inArrowLocation | Arrow location point  | 
    | inRadius | Leader radius  | 
    | inTerminatorType | Terminator type  | 
    | inEndingPnt | Leader ending point  | 
    | inCenterPnt | Center point  | 
    | IsCounterClockwise | DTK_TRUE if the leader angle is counter-clockwise  | 
  
   
 
 
◆ Create() [3/5]
Linear leader constructor. 
- Parameters
 - 
  
    | inWidth | Arrow width  | 
    | inHeight | Arrow height  | 
    | inArrowLocation | Arrow location point  | 
    | inTerminatorType | Terminator type  | 
    | inPntsArray | Points array representing the leader body - in polyline form -  | 
  
   
 
 
◆ Create() [4/5]
Calls copy constructor to allocate a new object. 
- Parameters
 - 
  
  
 
 
 
◆ Create() [5/5]
Calls move constructor to allocate a new object. 
- Parameters
 - 
  
  
 
 
 
◆ DtkDynamicCast()
Performs a dynamic cast - doesn't need RTTI -. 
 
 
◆ DtkDynamicType() [1/2]
Retrieves the dynamic entity type. 
 
 
◆ DtkDynamicType() [2/2]
  
  
      
        
          | virtual int Dtk_Object::DtkDynamicType  | 
          ( | 
          const int &  | 
          inId | ) | 
           | 
         
       
   | 
  
pure virtualinherited   | 
  
 
Implemented in Dtk_Shell, Dtk_Body, Dtk_Lump, Dtk_Volume, Dtk_Face, Dtk_Loop, Dtk_Coedge, Dtk_Edge, Dtk_Vertex, Dtk_TopologicalEntity, Dtk_MeshPolyline, Dtk_MeshSurface, 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, Dtk_Point, Dtk_Constraint, Dtk_ConstraintReference, Dtk_AxisSystem, Dtk_Preview, Dtk_Entity, Dtk_picture, Dtk_OverrideSet, Dtk_OverrideInfo, Dtk_MainDoc, Dtk_Component, Dtk_Node, Dtk_DocElement, Dtk_Log, and Dtk_Properties.
 
 
◆ dump()
  
  
      
        
          | virtual void Dtk_Object::dump  | 
          ( | 
          FILE *  | 
          file = stdout | ) | 
           | 
         
       
   | 
  
virtualinherited   | 
  
 
 
◆ GetAllAroundSet()
      
        
          | Dtk_bool Dtk_Leader::GetAllAroundSet  | 
          ( | 
           | ) | 
           const | 
        
      
 
 
◆ GetApplicationZone()
Retrieves the Frame - read only -. 
- Parameters
 - 
  
  
 
- See also
 - FrameType() const  
 
 
 
◆ GetApplicationZoneType()
Retrieves the Frame - read only -. 
- Parameters
 - 
  
  
 
- See also
 - FrameType() const  
 
 
 
◆ GetArrowHead() [1/2]
◆ GetArrowHead() [2/2]
      
        
          | const ArrowHead& Dtk_Leader::GetArrowHead  | 
          ( | 
           | ) | 
           const | 
        
      
 
 
◆ GetArrowLocation()
      
        
          | const Dtk_pnt& Dtk_Leader::GetArrowLocation  | 
          ( | 
           | ) | 
           const | 
        
      
 
 
◆ GetExtensionLine()
Get the leader Extendion Line. 
- Returns
 - The Dtk_PolylinePtr defining the Extension Line. 
 
 
 
◆ GetInfo()
Retrieves the infos. 
- Returns
 - The infos 
 
 
 
◆ GetLeaderCurve()
Returns the leader curve. 
- Returns
 - Dtk_CurvePtr or NULL. 
 
 
 
◆ GetLeaderType()
Gets the leader type - read only -. 
- Returns
 - The leader type 
 
 
 
◆ GetSize()
Reimplemented in Dtk_Shell, Dtk_Body, Dtk_Lump, Dtk_Volume, Dtk_Face, Dtk_Loop, Dtk_Coedge, Dtk_Edge, Dtk_Vertex, Dtk_mesh_face, 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, Dtk_Point, Dtk_Entity, and Dtk_Info.
 
 
◆ GetStubDelta()
      
        
          | double Dtk_Leader::GetStubDelta  | 
          ( | 
           | ) | 
           const | 
        
      
 
Retrieves the value of the leader stub. 
- Returns
 - double. 
 
 
 
◆ LeaderTerminatorTypeEnumToString()
 2055         default:                                    
return L
"Unknown";
 
 
 
 
◆ operator=() [1/2]
Copy assignment operator. 
- Parameters
 - 
  
  
 
 
 
◆ operator=() [2/2]
Move assignment operator. 
- Parameters
 - 
  
  
 
 
 
◆ RetrieveLeader_terminator_infos()
Retrieves the leader terminator informations. 
- Parameters
 - 
  
    | outWidth | Arrow width  | 
    | outHeight | Arrow height  | 
    | outArrowLocation | Arrow location point  | 
    | outTerminatorType | Terminator type  | 
  
   
- Returns
 - dtkNoError if OK 
 
 
 
◆ SetAllAroundSet()
      
        
          | void Dtk_Leader::SetAllAroundSet  | 
          ( | 
          const Dtk_bool &  | 
          inAllAroundSetValue | ) | 
           | 
        
      
 
Set the status of the all around property for the current drawing leader. 
- Parameters
 - 
  
    | inAllAroundSetValue | as boolean value  | 
  
   
 
 
◆ SetApplicationZoneType()
Set the text frame information - get/set -. 
- Returns
 - The text frame type 
 
- See also
 - FrameType() const  
 
 
 
◆ SetArrowHead()
      
        
          | void Dtk_Leader::SetArrowHead  | 
          ( | 
          const ArrowHead &  | 
          inArroWHead | ) | 
           | 
        
      
 
 
◆ SetExtensionLine()
Set the leader Extendion Line. 
- Parameters
 - 
  
    | inExtLine | The Dtk_PolylinePtr defining the Extension Line.  | 
  
   
 
 
◆ SetLeaderCurveColor()
      
        
          | void Dtk_Leader::SetLeaderCurveColor  | 
          ( | 
          const Dtk_RGB &  | 
          inColor | ) | 
           | 
        
      
 
Set the leader curve Color. 
- Parameters
 - 
  
  
 
 
 
◆ SetLeaderCurveLineType()
      
        
          | void Dtk_Leader::SetLeaderCurveLineType  | 
          ( | 
          const Dtk_FontLineType  | 
          inCurveLineType | ) | 
           | 
        
      
 
Set the leader curve FontLineType . 
- Parameters
 - 
  
    | inCurveLineType | The curve FontLineType .  | 
  
   
 
 
◆ SetLeaderCurveThicknessInMM()
      
        
          | void Dtk_Leader::SetLeaderCurveThicknessInMM  | 
          ( | 
          const Dtk_Double64  | 
          inCurveThicknessinMM | ) | 
           | 
        
      
 
Set the leader curve Thickness in Millimeters. 
- Parameters
 - 
  
    | inCurveThicknessinMM | The curve Thickness in Millimeters.  | 
  
   
 
 
◆ SetLeaderTerminatorType()
Set the Leader Terminator Type. 
- Parameters
 - 
  
    | inTerminatorType | The Leader Terminator Type  | 
  
   
 
 
◆ SetLeaderWidthHeight()
◆ SetStubDelta()
      
        
          | void Dtk_Leader::SetStubDelta  | 
          ( | 
          const double &  | 
          inStubDelta | ) | 
           | 
        
      
 
Set the value of the leader stub. 
- Parameters
 - 
  
    | inStubDelta | as double value.  | 
  
   
 
 
◆ Transform()
Applies a transformation matrix to the entity. //! 
- Parameters
 - 
  
    | inTransfo | The transformation matrix to apply.  | 
  
   
 
 
◆ _Private
  
  
      
        
          | Dtk_Handle* Dtk_Leader::_Private | 
         
       
   | 
  
protected   | 
  
 
 
◆ count_
  
  
      
        
          | unsigned long Dtk_Object::count_ | 
         
       
   | 
  
protectedinherited   | 
  
 
 
 
 
@ TerminatorTypeDoubleCrossArrow
Definition: util_draw_dtk.hpp:2020
 
@ TerminatorTypeCrossArrow
Definition: util_draw_dtk.hpp:1976
 
@ TerminatorTypeDoubleTriangle
Definition: util_draw_dtk.hpp:2010
 
@ _typeID
Definition: util_draw_dtk.hpp:2204
 
@ IncludeLeaderArrowHead
Definition: util_draw_dtk.hpp:2063
 
@ IncludeLeaderExtensionLine
Definition: util_draw_dtk.hpp:2064
 
@ IncludeLeaderCurve
Definition: util_draw_dtk.hpp:2062
 
@ TerminatorTypeTriangle
Definition: util_draw_dtk.hpp:1992
 
@ TerminatorTypeCircle
Definition: util_draw_dtk.hpp:1978
 
@ DTK_TYPE_OBJECT
Definition: define.h:466
 
@ TerminatorTypeFilledTriangle
Definition: util_draw_dtk.hpp:1994
 
@ TerminatorTypeDoubleCloseArrow
Definition: util_draw_dtk.hpp:2006
 
@ TerminatorTypeFilledCircle
Definition: util_draw_dtk.hpp:1980
 
@ TypeUnknown
Definition: util_draw_dtk.hpp:2195
 
@ IncludeLeaderApplicationZone
Definition: util_draw_dtk.hpp:2065
 
@ TerminatorTypeBottomOpenArrow
Definition: util_draw_dtk.hpp:2014
 
@ TerminatorTypeBottomFillArrow
Definition: util_draw_dtk.hpp:2018
 
@ DTK_TYPE_LEADER
Definition: define.h:474
 
@ TerminatorTypeSlash
Definition: util_draw_dtk.hpp:1986
 
@ TypeLinear
Definition: util_draw_dtk.hpp:2196
 
@ TerminatorTypeIntegral
Definition: util_draw_dtk.hpp:2000
 
@ TerminatorTypeXCircle
Definition: util_draw_dtk.hpp:1990
 
@ TerminatorTypeSquare
Definition: util_draw_dtk.hpp:1982
 
@ IncludeNone
Definition: util_draw_dtk.hpp:2061
 
@ TerminatorTypeDoubleFillArrow
Definition: util_draw_dtk.hpp:2008
 
@ TerminatorTypeTopOpenArrow
Definition: util_draw_dtk.hpp:2012
 
@ TerminatorTypeTopFillArrow
Definition: util_draw_dtk.hpp:2016
 
@ TerminatorTypeClosedArrow
Definition: util_draw_dtk.hpp:1972
 
@ _typeID
Definition: dtk_object.hpp:10
 
@ TerminatorTypeCircleCenter
Definition: util_draw_dtk.hpp:2002
 
@ TypeAngular
Definition: util_draw_dtk.hpp:2197
 
@ TerminatorTypePlus
Definition: util_draw_dtk.hpp:1996
 
@ TerminatorTypeXCross
Definition: util_draw_dtk.hpp:1998
 
@ IncludeAll
Definition: util_draw_dtk.hpp:2060
 
@ TerminatorTypeFilledSquare
Definition: util_draw_dtk.hpp:1984
 
@ TerminatorTypeDoubleOpenArrow
Definition: util_draw_dtk.hpp:2004
 
@ TerminatorTypeFillArrow
Definition: util_draw_dtk.hpp:1974
 
@ TerminatorTypeCrossedCircle
Definition: util_draw_dtk.hpp:1988
 
@ TerminatorTypeNone
Definition: util_draw_dtk.hpp:1968
 
@ TerminatorTypeOpenArrow
Definition: util_draw_dtk.hpp:1970