DATAKIT API  V2025.1
Dtk_Edge Class Reference

Edge has two vertex for bounds. It has a 3D curve as geometry value. More...

+ Inheritance diagram for Dtk_Edge:

Public Member Functions

virtual Dtk_ErrorStatus _Store (void *)
 Internal Use. More...
 
Dtk_ErrorStatus AddCoedge (const Dtk_CoedgePtr &inCoedge)
 Add a Coedge to Edge. More...
 
Dtk_ErrorStatus AddCoedge (const Dtk_ID &inCoedgeId)
 
int DtkDynamicType (const int &inId)
 Get smart pointer type. More...
 
virtual void dump (FILE *file=stdout)
 
Dtk_InfoPtr get_info () const
 
enum type_detk get_type_detk () const
 Return Type of entity. More...
 
Dtk_ErrorStatus GetEndVertex (Dtk_ID &outVertexId) const
 
Dtk_ErrorStatus GetEndVertex (Dtk_VertexPtr &outVertex) const
 Get End Vertex for edge. More...
 
Dtk_CurvePtr GetGeom (Dtk_bool inWithVerticesTrim=DTK_TRUE) const
 Get edge geometry. More...
 
const Dtk_IDGetID () const
 Get Internal UniqueID. More...
 
Dtk_Size_t GetNumCoedges () const
 Get Number of coedges. More...
 
Dtk_ErrorStatus GetParentCoedge (const Dtk_Size_t &inIndex, Dtk_CoedgePtr &outCoedge) const
 Get Corresponding coedges from index. More...
 
Dtk_ErrorStatus GetParentCoedge (const Dtk_Size_t &inIndex, Dtk_ID &outCoedgeId) const
 
virtual Dtk_Size_t GetSize () const
 Internal Use. More...
 
Dtk_ErrorStatus GetStartVertex (Dtk_ID &outVertexId) const
 
Dtk_ErrorStatus GetStartVertex (Dtk_VertexPtr &outVertex) const
 Get Start Vertex for edge. More...
 
Dtk_ErrorStatus GetTolerance (Dtk_Double64 &outTolerance)
 Get Tolerance. More...
 
Dtk_ID GetTopoID () const
 
Dtk_InfoPtrinfo ()
 
virtual void PrepareTransfo ()
 
void RemoveCoedge (const Dtk_ID &inCoedgeId)
 Remove a Coedge to Edge's list of coedges. More...
 
 SetAsDeprecated ("2022.1", "GetTolerance(Dtk_Double64 &outTolerance) method instead.") Dtk_Double64 GetTolerance()
 Get Tolerance. More...
 
Dtk_ErrorStatus SetCoedges (const Dtk_CoedgePtr &inFirstCoedge, const Dtk_CoedgePtr &inSecondCoedge)
 Set Corresponding coedges. More...
 
Dtk_ErrorStatus SetEndVertex (const Dtk_ID &inVertex)
 
Dtk_ErrorStatus SetEndVertex (const Dtk_VertexPtr &inVertex)
 Set End Vertex for edge. More...
 
void SetGeom (const Dtk_CurvePtr &inCurve3D)
 Set Geometry. More...
 
Dtk_ErrorStatus SetParentBody (const Dtk_BodyPtr &inParentBody)
 
Dtk_ErrorStatus SetStartVertex (const Dtk_ID &inVertex)
 
Dtk_ErrorStatus SetStartVertex (const Dtk_VertexPtr &inVertex)
 Set Start Vertex for edge. More...
 
void SetTolerance (Dtk_Double64 inTol)
 Set Tolerance. More...
 
virtual Dtk_ErrorStatus Transform (const Dtk_transfo &inTransfo)
 Transform object. More...
 

Static Public Member Functions

static Dtk_EdgePtr Create (const Dtk_BodyPtr &inParentBody)
 Create an edge in a body. More...
 
static Dtk_EdgeDtkDynamicCast (Dtk_Object *inObject)
 

Protected Types

enum  { _typeID = DTK_TYPE_TOPOLOGICAL_REPRESENTATION_ITEM }
 
enum  { _typeID = DTK_TYPE_ENTITY }
 
enum  { _typeID = DTK_TYPE_EDGE }
 

Protected Member Functions

void _Clone (Dtk_TopologicalEntityPtr &outTopo, Dtk_Body *_inParentBody)
 
void _Copy (const Dtk_Edge &inTopo, Dtk_Body *inParentBody)
 
void _copy (const Dtk_Entity &s)
 
void _copy (const Dtk_Object &s)
 
void _init ()
 
void _Init ()
 
void _reset ()
 
void _Reset ()
 
virtual Dtk_ObjectClone ()
 
 Dtk_Edge ()
 
 Dtk_Edge (const Dtk_Edge &inEdgeTpCopy, Dtk_Body *inParentBody)
 
virtual ~Dtk_Edge ()
 

Protected Attributes

Dtk_Handle * _Private
 
unsigned long count_
 

Friends

class Dtk_SmartPtr< Dtk_Edge >
 
class Dtk_TopologicalEntity
 

Detailed Description

Edge has two vertex for bounds. It has a 3D curve as geometry value.

Geometrical orientation relative to 3D Curve is always True

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
_typeID 

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
_typeID 

◆ anonymous enum

anonymous enum
protected
Enumerator
_typeID 
158 { _typeID = DTK_TYPE_EDGE };

Constructor & Destructor Documentation

◆ Dtk_Edge() [1/2]

Dtk_Edge::Dtk_Edge ( )
protected

◆ Dtk_Edge() [2/2]

Dtk_Edge::Dtk_Edge ( const Dtk_Edge inEdgeTpCopy,
Dtk_Body inParentBody 
)
protected

◆ ~Dtk_Edge()

virtual Dtk_Edge::~Dtk_Edge ( )
protectedvirtual

Member Function Documentation

◆ _Clone()

void Dtk_Edge::_Clone ( Dtk_TopologicalEntityPtr outTopo,
Dtk_Body _inParentBody 
)
protectedvirtual

Implements Dtk_TopologicalEntity.

◆ _Copy()

void Dtk_Edge::_Copy ( const Dtk_Edge inTopo,
Dtk_Body inParentBody 
)
protected

◆ _copy() [1/2]

void Dtk_Entity::_copy ( const Dtk_Entity s)
protectedinherited

◆ _copy() [2/2]

void Dtk_Object::_copy ( const Dtk_Object s)
protectedinherited

◆ _init()

void Dtk_Entity::_init ( )
protectedinherited

◆ _Init()

void Dtk_Edge::_Init ( )
protected

◆ _reset()

void Dtk_Entity::_reset ( )
protectedinherited

◆ _Reset()

void Dtk_Edge::_Reset ( )
protected

◆ _Store()

virtual Dtk_ErrorStatus Dtk_Edge::_Store ( void *  )
virtual

Internal Use.

Reimplemented from Dtk_Entity.

◆ AddCoedge() [1/2]

Dtk_ErrorStatus Dtk_Edge::AddCoedge ( const Dtk_CoedgePtr inCoedge)

Add a Coedge to Edge.

Parameters
[in]:inCoedge
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ AddCoedge() [2/2]

Dtk_ErrorStatus Dtk_Edge::AddCoedge ( const Dtk_ID inCoedgeId)

◆ Clone()

virtual Dtk_Object* Dtk_TopologicalEntity::Clone ( )
protectedvirtualinherited

Implements Dtk_Entity.

37 {return NULL;}

◆ Create()

static Dtk_EdgePtr Dtk_Edge::Create ( const Dtk_BodyPtr inParentBody)
static

Create an edge in a body.

Parameters
[in]inParentBody: parent body
Returns
static Dtk_EdgePtr

◆ DtkDynamicCast()

static Dtk_Edge* Dtk_Edge::DtkDynamicCast ( Dtk_Object inObject)
static

◆ DtkDynamicType()

int Dtk_Edge::DtkDynamicType ( const int &  inId)
virtual

Get smart pointer type.

Parameters
[in]inId:
Returns
int

Reimplemented from Dtk_TopologicalEntity.

◆ dump()

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

◆ get_info()

Dtk_InfoPtr Dtk_Entity::get_info ( ) const
inherited

◆ get_type_detk()

enum type_detk Dtk_Edge::get_type_detk ( ) const
virtual

Return Type of entity.

Returns
enum type_detk

Reimplemented from Dtk_TopologicalEntity.

◆ GetEndVertex() [1/2]

Dtk_ErrorStatus Dtk_Edge::GetEndVertex ( Dtk_ID outVertexId) const

◆ GetEndVertex() [2/2]

Dtk_ErrorStatus Dtk_Edge::GetEndVertex ( Dtk_VertexPtr outVertex) const

Get End Vertex for edge.

Parameters
[out]:outVertexend vertex of edge
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ GetGeom()

Dtk_CurvePtr Dtk_Edge::GetGeom ( Dtk_bool  inWithVerticesTrim = DTK_TRUE) const

Get edge geometry.

Parameters
[in]:inWithVerticesTrimif DTK_TRUE Curve is trimmed with vertices of edge
Returns
Dtk_CurvePtr

◆ GetID()

const Dtk_ID& Dtk_Entity::GetID ( ) const
inherited

Get Internal UniqueID.

Returns
InternalID

◆ GetNumCoedges()

Dtk_Size_t Dtk_Edge::GetNumCoedges ( ) const

Get Number of coedges.

Returns
Number of coedges

◆ GetParentCoedge() [1/2]

Dtk_ErrorStatus Dtk_Edge::GetParentCoedge ( const Dtk_Size_t inIndex,
Dtk_CoedgePtr outCoedge 
) const

Get Corresponding coedges from index.

Parameters
[in]:inIndexcoedge index
[out]:outSecondCoedgecoedge pointer
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ GetParentCoedge() [2/2]

Dtk_ErrorStatus Dtk_Edge::GetParentCoedge ( const Dtk_Size_t inIndex,
Dtk_ID outCoedgeId 
) const

◆ GetSize()

virtual Dtk_Size_t Dtk_Edge::GetSize ( ) const
virtual

Internal Use.

Reimplemented from Dtk_Entity.

◆ GetStartVertex() [1/2]

Dtk_ErrorStatus Dtk_Edge::GetStartVertex ( Dtk_ID outVertexId) const

◆ GetStartVertex() [2/2]

Dtk_ErrorStatus Dtk_Edge::GetStartVertex ( Dtk_VertexPtr outVertex) const

Get Start Vertex for edge.

Parameters
[out]:outVertexstart vertex of edge
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ GetTolerance()

Dtk_ErrorStatus Dtk_Edge::GetTolerance ( Dtk_Double64 outTolerance)

Get Tolerance.

Parameters
[out]outTolerance: edge tolerance
Returns
dtkNoError if value set or dtkWarningDefaultValue if default

◆ GetTopoID()

Dtk_ID Dtk_Edge::GetTopoID ( ) const
virtual

Reimplemented from Dtk_TopologicalEntity.

◆ info()

Dtk_InfoPtr& Dtk_Entity::info ( )
inherited

◆ PrepareTransfo()

virtual void Dtk_Entity::PrepareTransfo ( )
virtualinherited

Reimplemented in Dtk_OffsetSurface.

◆ RemoveCoedge()

void Dtk_Edge::RemoveCoedge ( const Dtk_ID inCoedgeId)

Remove a Coedge to Edge's list of coedges.

Parameters
[in]:inCoedge

◆ SetAsDeprecated()

Dtk_Edge::SetAsDeprecated ( "2022.1"  ,
"GetTolerance(Dtk_Double64 &outTolerance) method instead."   
)

Get Tolerance.

Deprecated:
Returns
double Tolerance

◆ SetCoedges()

Dtk_ErrorStatus Dtk_Edge::SetCoedges ( const Dtk_CoedgePtr inFirstCoedge,
const Dtk_CoedgePtr inSecondCoedge 
)

Set Corresponding coedges.

Parameters
[in]:inFirstCoedge
[in]:inSecondCoedge
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ SetEndVertex() [1/2]

Dtk_ErrorStatus Dtk_Edge::SetEndVertex ( const Dtk_ID inVertex)

◆ SetEndVertex() [2/2]

Dtk_ErrorStatus Dtk_Edge::SetEndVertex ( const Dtk_VertexPtr inVertex)

Set End Vertex for edge.

Parameters
[in]:inVertexend vertex to set
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ SetGeom()

void Dtk_Edge::SetGeom ( const Dtk_CurvePtr inCurve3D)

Set Geometry.

Parameters
[in]inCurve3D: 3D curve supporting the edge
Returns
void

◆ SetParentBody()

Dtk_ErrorStatus Dtk_Edge::SetParentBody ( const Dtk_BodyPtr inParentBody)
virtual

Reimplemented from Dtk_TopologicalEntity.

◆ SetStartVertex() [1/2]

Dtk_ErrorStatus Dtk_Edge::SetStartVertex ( const Dtk_ID inVertex)

◆ SetStartVertex() [2/2]

Dtk_ErrorStatus Dtk_Edge::SetStartVertex ( const Dtk_VertexPtr inVertex)

Set Start Vertex for edge.

Parameters
[in]:inVertexstart vertex to set
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ SetTolerance()

void Dtk_Edge::SetTolerance ( Dtk_Double64  inTol)

Set Tolerance.

Parameters
[in]inTol: Tolerance

◆ Transform()

virtual Dtk_ErrorStatus Dtk_TopologicalEntity::Transform ( const Dtk_transfo inTransfo)
virtualinherited

Transform object.

Parameters
[in]inTransfo: matrix to apply
Returns
Dtk_ErrorStatus

Implements Dtk_Entity.

Friends And Related Function Documentation

◆ Dtk_SmartPtr< Dtk_Edge >

friend class Dtk_SmartPtr< Dtk_Edge >
friend

◆ Dtk_TopologicalEntity

friend class Dtk_TopologicalEntity
friend

Field Documentation

◆ _Private

Dtk_Handle* Dtk_Edge::_Private
protected

◆ count_

unsigned long Dtk_Object::count_
protectedinherited
DTK_TYPE_ENTITY
@ DTK_TYPE_ENTITY
Definition: define.h:466
Dtk_TopologicalEntity::_typeID
@ _typeID
Definition: util_topology_dtk.hpp:29
Dtk_Edge::_typeID
@ _typeID
Definition: util_topology_dtk.hpp:158
Dtk_Entity::_typeID
@ _typeID
Definition: util_ent_dtk.hpp:333
DTK_TYPE_TOPOLOGICAL_REPRESENTATION_ITEM
@ DTK_TYPE_TOPOLOGICAL_REPRESENTATION_ITEM
Definition: define.h:167
DTK_TYPE_EDGE
@ DTK_TYPE_EDGE
Definition: define.h:128