DATAKIT API  V2025.1
Dtk_ReferenceFrame Class Referenceabstract

This is the Reference Frame Class.
It is part of the Dtk_ToleranceSpecification entity.
It's basically composed by one - or more - Dtk_ReferenceBlock. More...

+ Inheritance diagram for Dtk_ReferenceFrame:

Public Member Functions

Dtk_ErrorStatus AddReferenceBlock (const Dtk_ReferenceBlockPtr &inReferenceBlock)
 Add a reference block to the Dtk_ReferenceFrame. More...
 
Dtk_Int32 DtkDynamicType (const Dtk_Int32 &inId)
 Retrieves the dynamic entity type. More...
 
virtual int DtkDynamicType (const int &inId)=0
 
virtual void dump (FILE *file=stdout)
 
Dtk_ReferenceBlockPtrFirstReference ()
 Retrieves the first reference block - get/set -. More...
 
const Dtk_ReferenceBlockPtrFirstReference () const
 Retrieves the first reference block - read only -. More...
 
Dtk_ErrorStatus GetAnchorPoints (Dtk_pnt(&outTabPnts)[DTK_NB_ANCHOR_TYPES], const Dtk_Double64 &inOffSet=0.0) const
 Processes all the Dtk_ReferenceFrame anchor points. More...
 
Dtk_Size_t GetNumReferences () const
 Retrieves the number of reference blocks - read only -. More...
 
Dtk_ErrorStatus GetOuterBoundingBox (Dtk_Oriented2dBBox &outOuterBBox) const
 
virtual Dtk_Size_t GetSize () const
 
Dtk_ReferenceFrameoperator= (const Dtk_ReferenceFrame &inToBeAssigned)
 Assignment Operator. More...
 
Dtk_ReferenceFrameoperator= (Dtk_ReferenceFrame &&inToBeMoved) DTK_NOEXCEPT
 \MoveOp{inToBeMoved} More...
 
Dtk_ReferenceBlockPtrReference (const Dtk_Size_t &inReferencePos)
 Retrieves the ith reference block - get/set -. More...
 
const Dtk_ReferenceBlockPtrReference (const Dtk_Size_t &inReferencePos) const
 Retrieves the ith reference blocks - read only -. More...
 
Dtk_ReferenceBlockPtrSecondReference ()
 Retrieves the second reference block - get/set -. More...
 
const Dtk_ReferenceBlockPtrSecondReference () const
 Retrieves the second reference block - read only -. More...
 
Dtk_ErrorStatus SetAnchorPoint (const Dtk_pnt &inNewLocation, const Dtk_anchor_type &inLocationAnchorType, const Dtk_Double64 &inOffSet=0.0)
 Sets the Dtk_ReferenceFrame anchor point. More...
 
Dtk_ReferenceBlockPtrThirdReference ()
 Retrieves the third reference block - get/set -. More...
 
const Dtk_ReferenceBlockPtrThirdReference () const
 Retrieves the third reference block - read only -. More...
 
void Translate (const Dtk_dir &inTranslationDir)
 

Static Public Member Functions

static Dtk_ReferenceFramePtr Create ()
 Base constructor. More...
 
static Dtk_ReferenceFramePtr Create (const Dtk_ReferenceBlockPtr &inFirstReferenceBlock)
 Full featured constructor with one first reference block. More...
 
static Dtk_ReferenceFramePtr Create (const Dtk_ReferenceFrame &inToBeCopied)
 Copy constructor. More...
 
static Dtk_ReferenceFramePtr Create (Dtk_ReferenceFrame &&inToBeMoved)
 \MoveConstructor{inToBeMoved} More...
 
static Dtk_ReferenceFrameDtkDynamicCast (Dtk_Object *s)
 Performs a dynamic cast - doesn't need RTTI -. More...
 

Protected Types

enum  { _typeID = DTK_TYPE_OBJECT }
 
enum  { _typeID = DTK_TYPE_REFERENCE_FRAME }
 

Protected Member Functions

void _copy (const Dtk_Object &s)
 
void _init ()
 
void _reset ()
 
virtual Dtk_ObjectClone ()
 
 Dtk_ReferenceFrame ()
 
 Dtk_ReferenceFrame (const Dtk_ReferenceBlockPtr &ref)
 
 Dtk_ReferenceFrame (const Dtk_ReferenceFrame &s)
 
 Dtk_ReferenceFrame (Dtk_ReferenceFrame &&s) DTK_NOEXCEPT
 
 ~Dtk_ReferenceFrame ()
 Destructor. More...
 

Protected Attributes

Dtk_Handle * _Private
 
unsigned long count_
 

Friends

class Dtk_SmartPtr< Dtk_ReferenceFrame >
 

Detailed Description

This is the Reference Frame Class.
It is part of the Dtk_ToleranceSpecification entity.
It's basically composed by one - or more - Dtk_ReferenceBlock.

See also
Please use the Dtk_ReferenceFramePtr class to handle it...

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
_typeID 

◆ anonymous enum

anonymous enum
protected
Enumerator
_typeID 
5291  {
5293  };

Constructor & Destructor Documentation

◆ Dtk_ReferenceFrame() [1/4]

Dtk_ReferenceFrame::Dtk_ReferenceFrame ( )
protected
See also
Create()

◆ Dtk_ReferenceFrame() [2/4]

Dtk_ReferenceFrame::Dtk_ReferenceFrame ( const Dtk_ReferenceFrame s)
protected

◆ Dtk_ReferenceFrame() [3/4]

Dtk_ReferenceFrame::Dtk_ReferenceFrame ( Dtk_ReferenceFrame &&  s)
protected

◆ Dtk_ReferenceFrame() [4/4]

Dtk_ReferenceFrame::Dtk_ReferenceFrame ( const Dtk_ReferenceBlockPtr ref)
protected

◆ ~Dtk_ReferenceFrame()

Dtk_ReferenceFrame::~Dtk_ReferenceFrame ( )
protected

Destructor.

Member Function Documentation

◆ _copy()

void Dtk_Object::_copy ( const Dtk_Object s)
protectedinherited

◆ _init()

void Dtk_Object::_init ( )
protectedinherited

◆ _reset()

void Dtk_Object::_reset ( )
protectedinherited

◆ AddReferenceBlock()

Dtk_ErrorStatus Dtk_ReferenceFrame::AddReferenceBlock ( const Dtk_ReferenceBlockPtr inReferenceBlock)

Add a reference block to the Dtk_ReferenceFrame.

Parameters
inReferenceBlockThe reference block to add
Returns
DtkNoError if OK.

◆ Clone()

virtual Dtk_Object* Dtk_ReferenceFrame::Clone ( )
protectedvirtual
5305 { return new Dtk_ReferenceFrame(*this); }

◆ Create() [1/4]

static Dtk_ReferenceFramePtr Dtk_ReferenceFrame::Create ( )
static

Base constructor.

◆ Create() [2/4]

static Dtk_ReferenceFramePtr Dtk_ReferenceFrame::Create ( const Dtk_ReferenceBlockPtr inFirstReferenceBlock)
static

Full featured constructor with one first reference block.

Parameters
inFirstReferenceBlockThe first reference block
Returns
the created Dtk_ReferenceFramePtr

◆ Create() [3/4]

static Dtk_ReferenceFramePtr Dtk_ReferenceFrame::Create ( const Dtk_ReferenceFrame inToBeCopied)
static

Copy constructor.

Parameters
inToBeCopiedObject to copy.

◆ Create() [4/4]

static Dtk_ReferenceFramePtr Dtk_ReferenceFrame::Create ( Dtk_ReferenceFrame &&  inToBeMoved)
static

\MoveConstructor{inToBeMoved}

◆ DtkDynamicCast()

static Dtk_ReferenceFrame* Dtk_ReferenceFrame::DtkDynamicCast ( Dtk_Object s)
static

Performs a dynamic cast - doesn't need RTTI -.

◆ DtkDynamicType() [1/2]

Dtk_Int32 Dtk_ReferenceFrame::DtkDynamicType ( const Dtk_Int32 inId)

Retrieves the dynamic entity type.

◆ DtkDynamicType() [2/2]

◆ dump()

virtual void Dtk_Object::dump ( FILE *  file = stdout)
virtualinherited

◆ FirstReference() [1/2]

Dtk_ReferenceBlockPtr& Dtk_ReferenceFrame::FirstReference ( )

Retrieves the first reference block - get/set -.

Returns
The first reference block.
See also
FirstReference() const

◆ FirstReference() [2/2]

const Dtk_ReferenceBlockPtr& Dtk_ReferenceFrame::FirstReference ( ) const

Retrieves the first reference block - read only -.

Returns
The first reference block.
See also
FirstReference()

◆ GetAnchorPoints()

Dtk_ErrorStatus Dtk_ReferenceFrame::GetAnchorPoints ( Dtk_pnt(&)  outTabPnts[DTK_NB_ANCHOR_TYPES],
const Dtk_Double64 inOffSet = 0.0 
) const

Processes all the Dtk_ReferenceFrame anchor points.

Parameters
outTabPntsThe resulting anchor point array.
inOffSet- internal use only -.
Returns
DtkNoError if OK

◆ GetNumReferences()

Dtk_Size_t Dtk_ReferenceFrame::GetNumReferences ( ) const

Retrieves the number of reference blocks - read only -.

Returns
The number of reference blocks.

◆ GetOuterBoundingBox()

Dtk_ErrorStatus Dtk_ReferenceFrame::GetOuterBoundingBox ( Dtk_Oriented2dBBox outOuterBBox) const

◆ GetSize()

◆ operator=() [1/2]

Dtk_ReferenceFrame& Dtk_ReferenceFrame::operator= ( const Dtk_ReferenceFrame inToBeAssigned)

Assignment Operator.

Parameters
inToBeAssignedObject to copy.

◆ operator=() [2/2]

Dtk_ReferenceFrame& Dtk_ReferenceFrame::operator= ( Dtk_ReferenceFrame &&  inToBeMoved)

\MoveOp{inToBeMoved}

◆ Reference() [1/2]

Dtk_ReferenceBlockPtr& Dtk_ReferenceFrame::Reference ( const Dtk_Size_t inReferencePos)

Retrieves the ith reference block - get/set -.

Parameters
inReferencePosThe reference block index
Returns
The inReferencePos'th reference block.
Exceptions
Dtk_OutOfRangeTypeDtk_Exception is raised if the inReferencePos parameter is invalid

◆ Reference() [2/2]

const Dtk_ReferenceBlockPtr& Dtk_ReferenceFrame::Reference ( const Dtk_Size_t inReferencePos) const

Retrieves the ith reference blocks - read only -.

Parameters
inReferencePosThe reference block index
Returns
The inReferencePos'th reference block.
Exceptions
Dtk_OutOfRangeTypeDtk_Exception is raised if the inReferencePos parameter is invalid

◆ SecondReference() [1/2]

Dtk_ReferenceBlockPtr& Dtk_ReferenceFrame::SecondReference ( )

Retrieves the second reference block - get/set -.

Returns
The second reference block.
See also
FirstReference() const

◆ SecondReference() [2/2]

const Dtk_ReferenceBlockPtr& Dtk_ReferenceFrame::SecondReference ( ) const

Retrieves the second reference block - read only -.

Returns
The second reference block.
See also
FirstReference()

◆ SetAnchorPoint()

Dtk_ErrorStatus Dtk_ReferenceFrame::SetAnchorPoint ( const Dtk_pnt inNewLocation,
const Dtk_anchor_type inLocationAnchorType,
const Dtk_Double64 inOffSet = 0.0 
)

Sets the Dtk_ReferenceFrame anchor point.

Parameters
inNewLocationThe new location point.
inLocationAnchorTypeThe anchor type related to the new location.
inOffSetFor internal use only.
Returns
DtkNoError if OK

◆ ThirdReference() [1/2]

Dtk_ReferenceBlockPtr& Dtk_ReferenceFrame::ThirdReference ( )

Retrieves the third reference block - get/set -.

Returns
The third reference block.
See also
FirstReference() const

◆ ThirdReference() [2/2]

const Dtk_ReferenceBlockPtr& Dtk_ReferenceFrame::ThirdReference ( ) const

Retrieves the third reference block - read only -.

Returns
The third reference block.
See also
FirstReference()

◆ Translate()

void Dtk_ReferenceFrame::Translate ( const Dtk_dir inTranslationDir)

Friends And Related Function Documentation

◆ Dtk_SmartPtr< Dtk_ReferenceFrame >

friend class Dtk_SmartPtr< Dtk_ReferenceFrame >
friend

Field Documentation

◆ _Private

Dtk_Handle* Dtk_ReferenceFrame::_Private
protected

◆ count_

unsigned long Dtk_Object::count_
protectedinherited
Dtk_ReferenceFrame::_typeID
@ _typeID
Definition: util_draw_dtk.hpp:5292
DTK_TYPE_OBJECT
@ DTK_TYPE_OBJECT
Definition: define.h:464
DTK_TYPE_REFERENCE_FRAME
@ DTK_TYPE_REFERENCE_FRAME
Definition: define.h:474
Dtk_ReferenceFrame::Dtk_ReferenceFrame
Dtk_ReferenceFrame()
Dtk_Object::_typeID
@ _typeID
Definition: dtk_object.hpp:13