DATAKIT API  V2025.1
Dtk_Face Class Reference

is a surface bounded by Dtk_Loop. More...

+ Inheritance diagram for Dtk_Face:

Public Member Functions

virtual Dtk_ErrorStatus _Store (void *)
 
Dtk_ErrorStatus AddDegeneratedEdges () const
 Add Degenerated UV curves in loops. More...
 
Dtk_ErrorStatus AddInnerLoop (const Dtk_LoopPtr &inLoop)
 Add inner loop on a face. More...
 
Dtk_ErrorStatus AddLoop (const Dtk_LoopPtr &inLoop, const Dtk_bool &inOuterInfo)
 Add loop on a face. More...
 
Dtk_ErrorStatus AddOuterLoop (const Dtk_LoopPtr &inLoop)
 Add outer loop on a face. More...
 
Dtk_ErrorStatus AddParentShell (const Dtk_ID &inParentShellId)
 
Dtk_ErrorStatus AddParentShell (const Dtk_ShellPtr &inParentShell)
 Add parent shell on a face. More...
 
Dtk_ErrorStatus AddVertexLoop (const Dtk_VertexPtr &inVertexLoop)
 Add vertex loop on a face. More...
 
Dtk_ErrorStatus ComputeBoundingBox (Dtk_pnt &outMin, Dtk_pnt &outMax)
 
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_SurfacePtr GetGeom (Dtk_bool inWithSetTrim=DTK_TRUE) const
 Return associated geometry. More...
 
const Dtk_IDGetID () const
 Get Internal UniqueID. More...
 
Dtk_ErrorStatus GetLoop (const Dtk_Size_t &inIndex, Dtk_ID &outLoopId) const
 
Dtk_ErrorStatus GetLoop (const Dtk_Size_t &inIndex, Dtk_LoopPtr &outLoop) const
 Get loop of face. More...
 
Dtk_Size_t GetNumLoops () const
 Return number of bounding loop for face. More...
 
Dtk_Size_t GetNumParentShells () const
 Return number of parent shell (1 if manifold body) More...
 
Dtk_BodyPtr GetParentBody () const
 
Dtk_ErrorStatus GetParentShell (const Dtk_Size_t &inIndex, Dtk_ShellPtr &outParentShell) const
 Get parent shell of face. More...
 
Dtk_ErrorStatus GetParentShell (const Dtk_Size_t &inIndex, Dtk_ShellPtr &outParentShell, Dtk_bool &outOrient) const
 Get parent shell of face. More...
 
virtual Dtk_Size_t GetSize () const
 
Dtk_ID GetTopoID () const
 
Dtk_ErrorStatus GetTopologyStatus () const
 
Dtk_ErrorStatus GetTrimUVBox (Dtk_Double64 outTrimValues[]) const
 Get Surface Trim Box : Umin = outTrimValues[0] Umax = outTrimValues[1] Vmin = outTrimValues[2] Vmax = outTrimValues[3]. More...
 
Dtk_InfoPtrinfo ()
 
virtual void PrepareTransfo ()
 
Dtk_ErrorStatus RemoveLoopFromFace (const Dtk_LoopPtr &inLoop)
 
void RemoveParentShell (const Dtk_ID &inShellId)
 Remove a Shell to Shell's list of face. More...
 
Dtk_FacePtr ReverseNormal () const
 Create a new face with reversed surface. More...
 
void SetGeom (const Dtk_SurfacePtr &inSurface)
 Set Geometry. More...
 
Dtk_ErrorStatus SetParentBody (const Dtk_BodyPtr &inParentBody)
 
void SetTopologyStatus (Dtk_ErrorStatus inStatus)
 
Dtk_ErrorStatus SetTrimUVBox (Dtk_Double64 inTrimValues[])
 Set Surface Trim Box : Umin = inTrimValues[0] Umax = inTrimValues[1] Vmin = inTrimValues[2] Vmax = inTrimValues[3]. More...
 
virtual Dtk_ErrorStatus Transform (const Dtk_transfo &inTransfo)
 Transform object. More...
 

Static Public Member Functions

static Dtk_FacePtr Create (const Dtk_BodyPtr &inParentBody)
 Create a face in a body. More...
 
static Dtk_FaceDtkDynamicCast (Dtk_Object *inObject)
 

Protected Types

enum  { _typeID = DTK_TYPE_TOPOLOGICAL_REPRESENTATION_ITEM }
 
enum  { _typeID = DTK_TYPE_ENTITY }
 
enum  { _typeID = DTK_TYPE_FACE }
 

Protected Member Functions

void _Clone (Dtk_TopologicalEntityPtr &outTopo, Dtk_Body *_inParentBody)
 
void _copy (const Dtk_Entity &s)
 
void _Copy (const Dtk_Face &inTopo, Dtk_Body *inParentBody)
 
void _copy (const Dtk_Object &s)
 
void _init ()
 
void _Init ()
 
void _reset ()
 
void _Reset ()
 
virtual Dtk_ObjectClone ()
 
 Dtk_Face ()
 
 Dtk_Face (const Dtk_Face &inTopo, Dtk_Body *inParentBody)
 
Dtk_ErrorStatus SetLoop (const Dtk_Size_t &inIndex, const Dtk_LoopPtr &inLoop)
 
virtual ~Dtk_Face ()
 

Protected Attributes

Dtk_Handle * _Private
 
unsigned long count_
 

Friends

class Dtk_SmartPtr< Dtk_Face >
 
class Dtk_TopologicalEntity
 

Detailed Description

is a surface bounded by Dtk_Loop.

Geometrical orientation relative to basis surface 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 
528 { _typeID = DTK_TYPE_FACE };

Constructor & Destructor Documentation

◆ Dtk_Face() [1/2]

Dtk_Face::Dtk_Face ( )
protected

◆ Dtk_Face() [2/2]

Dtk_Face::Dtk_Face ( const Dtk_Face inTopo,
Dtk_Body inParentBody 
)
protected

◆ ~Dtk_Face()

virtual Dtk_Face::~Dtk_Face ( )
protectedvirtual

Member Function Documentation

◆ _Clone()

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

Implements Dtk_TopologicalEntity.

◆ _copy() [1/2]

void Dtk_Entity::_copy ( const Dtk_Entity s)
protectedinherited

◆ _Copy()

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

◆ _copy() [2/2]

void Dtk_Object::_copy ( const Dtk_Object s)
protectedinherited

◆ _init()

void Dtk_Entity::_init ( )
protectedinherited

◆ _Init()

void Dtk_Face::_Init ( )
protected

◆ _reset()

void Dtk_Entity::_reset ( )
protectedinherited

◆ _Reset()

void Dtk_Face::_Reset ( )
protected

◆ _Store()

virtual Dtk_ErrorStatus Dtk_Face::_Store ( void *  )
virtual

Reimplemented from Dtk_Entity.

◆ AddDegeneratedEdges()

Dtk_ErrorStatus Dtk_Face::AddDegeneratedEdges ( ) const

Add Degenerated UV curves in loops.

Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ AddInnerLoop()

Dtk_ErrorStatus Dtk_Face::AddInnerLoop ( const Dtk_LoopPtr inLoop)

Add inner loop on a face.

Parameters
[in]inLoop : inner loop to add
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ AddLoop()

Dtk_ErrorStatus Dtk_Face::AddLoop ( const Dtk_LoopPtr inLoop,
const Dtk_bool inOuterInfo 
)

Add loop on a face.

Parameters
[in]inLoop : loop to add
[in]inOuterInfo : outer info for inLoop (True if outer)
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ AddOuterLoop()

Dtk_ErrorStatus Dtk_Face::AddOuterLoop ( const Dtk_LoopPtr inLoop)

Add outer loop on a face.

Parameters
[in]inLoop : outer loop to add
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ AddParentShell() [1/2]

Dtk_ErrorStatus Dtk_Face::AddParentShell ( const Dtk_ID inParentShellId)

◆ AddParentShell() [2/2]

Dtk_ErrorStatus Dtk_Face::AddParentShell ( const Dtk_ShellPtr inParentShell)

Add parent shell on a face.

Parameters
[in]inParentShell shell to add
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ AddVertexLoop()

Dtk_ErrorStatus Dtk_Face::AddVertexLoop ( const Dtk_VertexPtr inVertexLoop)

Add vertex loop on a face.

Parameters
[in]inLoop : vertex loop to add
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ Clone()

virtual Dtk_Object* Dtk_TopologicalEntity::Clone ( )
protectedvirtualinherited

Implements Dtk_Entity.

37 {return NULL;}

◆ ComputeBoundingBox()

Dtk_ErrorStatus Dtk_Face::ComputeBoundingBox ( Dtk_pnt outMin,
Dtk_pnt outMax 
)

◆ Create()

static Dtk_FacePtr Dtk_Face::Create ( const Dtk_BodyPtr inParentBody)
static

Create a face in a body.

Parameters
[in]inParentBody: parent body
Returns
static Dtk_FacePtr

◆ DtkDynamicCast()

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

◆ DtkDynamicType()

int Dtk_Face::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_Face::get_type_detk ( ) const
virtual

Return Type of entity.

Returns
enum type_detk

Reimplemented from Dtk_TopologicalEntity.

◆ GetGeom()

Dtk_SurfacePtr Dtk_Face::GetGeom ( Dtk_bool  inWithSetTrim = DTK_TRUE) const

Return associated geometry.

Parameters
[in]inWithSetTrim if DTK_TRUE surface set trimuvbox like the face
Returns
Dtk_SurfacePtr

◆ GetID()

const Dtk_ID& Dtk_Entity::GetID ( ) const
inherited

Get Internal UniqueID.

Returns
InternalID

◆ GetLoop() [1/2]

Dtk_ErrorStatus Dtk_Face::GetLoop ( const Dtk_Size_t inIndex,
Dtk_ID outLoopId 
) const

◆ GetLoop() [2/2]

Dtk_ErrorStatus Dtk_Face::GetLoop ( const Dtk_Size_t inIndex,
Dtk_LoopPtr outLoop 
) const

Get loop of face.

Parameters
[in]inIndex : index of loop
[out]outLoop : loop
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ GetNumLoops()

Dtk_Size_t Dtk_Face::GetNumLoops ( ) const

Return number of bounding loop for face.

◆ GetNumParentShells()

Dtk_Size_t Dtk_Face::GetNumParentShells ( ) const

Return number of parent shell (1 if manifold body)

◆ GetParentBody()

Dtk_BodyPtr Dtk_Face::GetParentBody ( ) const

◆ GetParentShell() [1/2]

Dtk_ErrorStatus Dtk_Face::GetParentShell ( const Dtk_Size_t inIndex,
Dtk_ShellPtr outParentShell 
) const

Get parent shell of face.

Parameters
[in]inIndex : index of parent shell
[out]outParentShell : parent shell
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ GetParentShell() [2/2]

Dtk_ErrorStatus Dtk_Face::GetParentShell ( const Dtk_Size_t inIndex,
Dtk_ShellPtr outParentShell,
Dtk_bool outOrient 
) const

Get parent shell of face.

Parameters
[in]inIndex : index of parent shell
[out]outParentShell : parent shell
[out]outOrient : face orientation in parent shell
Returns
Dtk_ErrorStatus: dtkNoError if OK

◆ GetSize()

virtual Dtk_Size_t Dtk_Face::GetSize ( ) const
virtual

Reimplemented from Dtk_Entity.

◆ GetTopoID()

Dtk_ID Dtk_Face::GetTopoID ( ) const
virtual

Reimplemented from Dtk_TopologicalEntity.

◆ GetTopologyStatus()

Dtk_ErrorStatus Dtk_Face::GetTopologyStatus ( ) const

◆ GetTrimUVBox()

Dtk_ErrorStatus Dtk_Face::GetTrimUVBox ( Dtk_Double64  outTrimValues[]) const

Get Surface Trim Box : Umin = outTrimValues[0] Umax = outTrimValues[1] Vmin = outTrimValues[2] Vmax = outTrimValues[3].

◆ info()

Dtk_InfoPtr& Dtk_Entity::info ( )
inherited

◆ PrepareTransfo()

virtual void Dtk_Entity::PrepareTransfo ( )
virtualinherited

Reimplemented in Dtk_OffsetSurface.

◆ RemoveLoopFromFace()

Dtk_ErrorStatus Dtk_Face::RemoveLoopFromFace ( const Dtk_LoopPtr inLoop)

◆ RemoveParentShell()

void Dtk_Face::RemoveParentShell ( const Dtk_ID inShellId)

Remove a Shell to Shell's list of face.

Parameters
[in]:inShellId

◆ ReverseNormal()

Dtk_FacePtr Dtk_Face::ReverseNormal ( ) const

Create a new face with reversed surface.

Returns
a new single face with reversed normal

◆ SetGeom()

void Dtk_Face::SetGeom ( const Dtk_SurfacePtr inSurface)

Set Geometry.

Parameters
[in]inSurface: Basis Surface
Returns
void

◆ SetLoop()

Dtk_ErrorStatus Dtk_Face::SetLoop ( const Dtk_Size_t inIndex,
const Dtk_LoopPtr inLoop 
)
protected

◆ SetParentBody()

Dtk_ErrorStatus Dtk_Face::SetParentBody ( const Dtk_BodyPtr inParentBody)
virtual

Reimplemented from Dtk_TopologicalEntity.

◆ SetTopologyStatus()

void Dtk_Face::SetTopologyStatus ( Dtk_ErrorStatus  inStatus)

◆ SetTrimUVBox()

Dtk_ErrorStatus Dtk_Face::SetTrimUVBox ( Dtk_Double64  inTrimValues[])

Set Surface Trim Box : Umin = inTrimValues[0] Umax = inTrimValues[1] Vmin = inTrimValues[2] Vmax = inTrimValues[3].

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

friend class Dtk_SmartPtr< Dtk_Face >
friend

◆ Dtk_TopologicalEntity

friend class Dtk_TopologicalEntity
friend

Field Documentation

◆ _Private

Dtk_Handle* Dtk_Face::_Private
protected

◆ count_

unsigned long Dtk_Object::count_
protectedinherited
DTK_TYPE_ENTITY
@ DTK_TYPE_ENTITY
Definition: define.h:466
Dtk_Face::_typeID
@ _typeID
Definition: util_topology_dtk.hpp:528
Dtk_TopologicalEntity::_typeID
@ _typeID
Definition: util_topology_dtk.hpp:29
DTK_TYPE_FACE
@ DTK_TYPE_FACE
Definition: define.h:141
Dtk_Entity::_typeID
@ _typeID
Definition: util_ent_dtk.hpp:333
DTK_TYPE_TOPOLOGICAL_REPRESENTATION_ITEM
@ DTK_TYPE_TOPOLOGICAL_REPRESENTATION_ITEM
Definition: define.h:167