DATAKIT SDK  V2026.1
Dtk_Boundary Class Referenceabstract

This is the Boundary class. The boundary defines the curves that delimit a closed area. More...

+ Inheritance diagram for Dtk_Boundary:

Public Member Functions

 Dtk_Boundary (const Dtk_Boundary &in)
 Copy constructor. More...
 
 Dtk_Boundary (dtk::Span< Dtk_CurvePtr const > exactRepresentation, Dtk_PolylinePtr simplifiedRepresentation)
 Construct a boundary provided both its exact representation as curves, as well as a simplified representation as a polyline. More...
 
 Dtk_Boundary (Dtk_Boundary &&in) DTK_NOEXCEPT
 Move constructor. 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)
 
type_detk get_type_detk () const
 
dtk::Span< Dtk_CurvePtrGetExactRepresentation () const
 Retrieves all curves linked together that makes a boundary. More...
 
const Dtk_PolylinePtrGetSimplifiedRepresentation () const
 Retrieves a simplified representation of the boundary as a polyline. Useful for simple display. More...
 
virtual Dtk_Size_t GetSize () const
 
Dtk_Boundaryoperator= (const Dtk_Boundary &in)
 Copy assignment operator. More...
 
Dtk_Boundaryoperator= (Dtk_Boundary &&in) DTK_NOEXCEPT
 Move assignment operator. More...
 
Dtk_ErrorStatus Transform (const Dtk_transfo &inTransfo)
 Applies a transformation matrix to the entity. //! More...
 
 ~Dtk_Boundary ()
 Destructor. More...
 

Static Public Member Functions

static Dtk_BoundaryDtkDynamicCast (Dtk_Object *)
 Performs a dynamic cast - doesn't need RTTI -. More...
 

Protected Types

enum  { _typeID = DTK_TYPE_OBJECT }
 
enum  { _typeID = DTK_TYPE_BOUNDARY }
 

Protected Attributes

Dtk_Handle * _Private
 
unsigned long count_
 

Detailed Description

This is the Boundary class. The boundary defines the curves that delimit a closed area.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
_typeID 

◆ anonymous enum

anonymous enum
protected
Enumerator
_typeID 
7680  {
7682  };

Constructor & Destructor Documentation

◆ Dtk_Boundary() [1/3]

Dtk_Boundary::Dtk_Boundary ( dtk::Span< Dtk_CurvePtr const >  exactRepresentation,
Dtk_PolylinePtr  simplifiedRepresentation 
)

Construct a boundary provided both its exact representation as curves, as well as a simplified representation as a polyline.

It is expected that both definitions match, that is to say they represent the same geometry. In case the simplified representation isn't provided, it will be computed based on the exact representation by calling Dtk_Curve::ToPolyline.

Parameters
[in]exactRepresentation: a contiguous sequence of curves representing the exact definition of the boundary.
[in]simplifiedRepresentation: a single polyline representing the boundary.

◆ Dtk_Boundary() [2/3]

Dtk_Boundary::Dtk_Boundary ( const Dtk_Boundary in)

Copy constructor.

Parameters
inObject to copy from.

◆ Dtk_Boundary() [3/3]

Dtk_Boundary::Dtk_Boundary ( Dtk_Boundary &&  in)

Move constructor.

Parameters
inObject to move from.

◆ ~Dtk_Boundary()

Dtk_Boundary::~Dtk_Boundary ( )

Destructor.

Member Function Documentation

◆ DtkDynamicCast()

static Dtk_Boundary* Dtk_Boundary::DtkDynamicCast ( Dtk_Object )
static

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

◆ DtkDynamicType() [1/2]

Dtk_Int32 Dtk_Boundary::DtkDynamicType ( const Dtk_Int32 inId)

Retrieves the dynamic entity type.

◆ DtkDynamicType() [2/2]

◆ dump()

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

◆ get_type_detk()

type_detk Dtk_Boundary::get_type_detk ( ) const

◆ GetExactRepresentation()

dtk::Span<Dtk_CurvePtr> Dtk_Boundary::GetExactRepresentation ( ) const

Retrieves all curves linked together that makes a boundary.

Returns
An array of curves, all linked together with ordering.

◆ GetSimplifiedRepresentation()

const Dtk_PolylinePtr& Dtk_Boundary::GetSimplifiedRepresentation ( ) const

Retrieves a simplified representation of the boundary as a polyline. Useful for simple display.

Returns
The simplified polyline representation of the boundary.

◆ GetSize()

◆ operator=() [1/2]

Dtk_Boundary& Dtk_Boundary::operator= ( const Dtk_Boundary in)

Copy assignment operator.

Parameters
inObject to copy from.

◆ operator=() [2/2]

Dtk_Boundary& Dtk_Boundary::operator= ( Dtk_Boundary &&  in)

Move assignment operator.

Parameters
inObject to move from.

◆ Transform()

Dtk_ErrorStatus Dtk_Boundary::Transform ( const Dtk_transfo inTransfo)

Applies a transformation matrix to the entity. //!

Parameters
inTransfoThe transformation matrix to apply.

Field Documentation

◆ _Private

Dtk_Handle* Dtk_Boundary::_Private
protected

◆ count_

unsigned long Dtk_Object::count_
protectedinherited
DTK_TYPE_OBJECT
@ DTK_TYPE_OBJECT
Definition: define.h:466
DTK_TYPE_BOUNDARY
@ DTK_TYPE_BOUNDARY
Definition: define.h:623
Dtk_Object::_typeID
@ _typeID
Definition: dtk_object.hpp:10
Dtk_Boundary::_typeID
@ _typeID
Definition: util_draw_dtk.hpp:7681