DATAKIT API  V2025.4
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 &in)
 Copy assignment operator. More...
 
Dtk_ReferenceFrameoperator= (Dtk_ReferenceFrame &&in) DTK_NOEXCEPT
 Move assignment operator. 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 ()
 Calls default constructor to allocate a new object. 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 &in)
 Calls copy constructor to allocate a new object. More...
 
static Dtk_ReferenceFramePtr Create (Dtk_ReferenceFrame &&in)
 Calls move constructor to allocate a new object. 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

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_
 

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
Use Dtk_ReferenceFramePtr class to handle it.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
_typeID 

◆ anonymous enum

anonymous enum
protected
Enumerator
_typeID 

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

◆ 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

◆ Create() [1/4]

static Dtk_ReferenceFramePtr Dtk_ReferenceFrame::Create ( )
static

Calls default constructor to allocate a new object.

◆ 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 in)
static

Calls copy constructor to allocate a new object.

Parameters
inObject to copy from.

◆ Create() [4/4]

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

Calls move constructor to allocate a new object.

Parameters
inObject to move from.

◆ 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 in)

Copy assignment operator.

Parameters
inObject to copy from.

◆ operator=() [2/2]

Dtk_ReferenceFrame& Dtk_ReferenceFrame::operator= ( Dtk_ReferenceFrame &&  in)

Move assignment operator.

Parameters
inObject to move from.

◆ 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)

Field Documentation

◆ _Private

Dtk_Handle* Dtk_ReferenceFrame::_Private
protected

◆ count_

unsigned long Dtk_Object::count_
protectedinherited