Dtk_Shell is a set of faces bounding a volume. Dtk_Shell can be outer or inner. A Dtk_Body contain at least one open_shell or one outer closed shell and 0 or several inner closed shell. More...
Public Member Functions | |
virtual Dtk_ErrorStatus | _Store (void *) |
Dtk_ErrorStatus | AddFace (const Dtk_FacePtr &inFace, Dtk_bool inFaceOrientation, DtkFaceType inFaceType=DtkFaceType_Bounded) |
Add Face to shell. More... | |
Dtk_ErrorStatus | AddWire (Dtk_tab< Dtk_CurvePtr > inCurveArray) |
Add Wire entities. More... | |
Dtk_ErrorStatus | AddWire (Dtk_tab< Dtk_EdgePtr > inCurveArray) |
Dtk_ErrorStatus | AddWire (Dtk_tab< Dtk_PointPtr > inPointArray) |
Add Wire entities. More... | |
Dtk_ErrorStatus | AddWire (Dtk_tab< Dtk_VertexPtr > inPointArray) |
Dtk_bool | CheckIfClosed () |
Check if Shell is Closed. 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_ErrorStatus | GetFace (const Dtk_Size_t &inIndex, Dtk_FacePtr &outFace, Dtk_bool &outOrientation, DtkFaceType inFaceType=DtkFaceType_Bounded) const |
Get Face following Face type. More... | |
Dtk_ErrorStatus | GetFace (const Dtk_Size_t &inIndex, Dtk_ID &outFaceId, Dtk_bool &outOrientation, DtkFaceType inFaceType=DtkFaceType_Bounded) const |
const Dtk_ID & | GetID () const |
Get Internal UniqueID. More... | |
Dtk_Size_t | GetNumFaces (DtkFaceType inFaceType=DtkFaceType_Bounded) const |
Return Number of Faces following Face type. More... | |
Dtk_Size_t | GetNumWireSet () const |
Return Number of Wire set of entities equivalent to GetNumFaces with type DtkFaceType_Wire. More... | |
Dtk_ErrorStatus | GetParentBody (Dtk_BodyPtr &outParentBody) const |
Get Parent Body. More... | |
Dtk_ErrorStatus | GetParentVolume (Dtk_VolumePtr &outParentVolume) const |
Return parent volume of shell. More... | |
virtual Dtk_Size_t | GetSize () const |
Dtk_ID | GetTopoID () const |
Dtk_ErrorStatus | GetTopologyStatus () const |
Dtk_ErrorStatus | GetWireSet (const Dtk_Size_t &inIndex, Dtk_tab< Dtk_EntityPtr > &outWire) const |
Get Wire Set. More... | |
Dtk_ErrorStatus | GetWireSetTopo (const Dtk_Size_t &inIndex, Dtk_tab< Dtk_EntityPtr > &outWire) const |
Dtk_ErrorStatus | GetWireSetTopo (const Dtk_Size_t &inIndex, Dtk_tab< Dtk_EntityPtr > &outWire, Dtk_tab< Dtk_bool > &outOrientation, Dtk_bool &outLoopOrientation) const |
Get Wire Set. More... | |
Dtk_bool | HasWire () const |
Return DTK_TRUE if shell has Wire entities. More... | |
Dtk_InfoPtr & | info () |
Dtk_ErrorStatus | InverseFaceInShell (const Dtk_FacePtr &inFace) |
Dtk_bool | IsClosed () const |
Return DTK_TRUE if shell is closed. More... | |
Dtk_bool | IsOuter () const |
Return DTK_TRUE if shell is outer. More... | |
virtual void | PrepareTransfo () |
Dtk_ErrorStatus | RemoveFaceFromShell (const Dtk_FacePtr &inFace) |
Dtk_ErrorStatus | SetClosedInfo (const Dtk_bool &inClosedInfo) |
Set Closed Info DTK_TRUE if shell is closed. More... | |
Dtk_ErrorStatus | SetOuterInfo (const Dtk_bool &inOuterInfo) |
Set Outer Info DTK_TRUE if shell is outer. More... | |
Dtk_ErrorStatus | SetParentBody (const Dtk_BodyPtr &inParentBody) |
Dtk_ErrorStatus | SetParentVolume (const Dtk_ID &inParentVolumeId) |
Dtk_ErrorStatus | SetParentVolume (const Dtk_VolumePtr &inParentVolume) |
Set parent volume of shell. More... | |
void | SetTopologyStatus (Dtk_ErrorStatus inStatus) |
virtual Dtk_ErrorStatus | Transform (const Dtk_transfo &inTransfo) |
Transform object. More... | |
Static Public Member Functions | |
static Dtk_ShellPtr | Create (const Dtk_BodyPtr &inParentBody) |
Create a shell in a body. More... | |
static Dtk_ShellPtr | Create (const Dtk_BodyPtr &inParentBody, Dtk_UInt32 inFacesReserve, Dtk_UInt32 inWireReserve=0) |
Create a shell in a body. More... | |
static Dtk_Shell * | DtkDynamicCast (Dtk_Object *inObject) |
Protected Types | |
enum | { _typeID = DTK_TYPE_TOPOLOGICAL_REPRESENTATION_ITEM } |
enum | { _typeID = DTK_TYPE_ENTITY } |
enum | { _typeID = DTK_TYPE_SHELL } |
Protected Member Functions | |
void | _Clone (Dtk_TopologicalEntityPtr &outTopo, Dtk_Body *_inParentBody) |
void | _copy (const Dtk_Entity &s) |
void | _copy (const Dtk_Object &s) |
void | _Copy (const Dtk_Shell &inTopo, Dtk_Body *inParentBody) |
void | _init () |
void | _Init () |
void | _reset () |
void | _Reset () |
virtual Dtk_Object * | Clone () |
Dtk_Shell () | |
Dtk_Shell (const Dtk_Shell &inTopo, Dtk_Body *inParentBody) | |
Dtk_ErrorStatus | SetFace (const Dtk_Size_t &inIndex, const Dtk_FacePtr &inFace, const Dtk_bool &inFaceOrientation) |
virtual | ~Dtk_Shell () |
Protected Attributes | |
Dtk_Handle * | _Private |
unsigned long | count_ |
Friends | |
Dtk_ErrorStatus | Dtk_Body::ExtractEdgeBody (Dtk_BodyPtr &outEdgeBody) |
class | Dtk_SmartPtr< Dtk_Shell > |
class | Dtk_TopologicalEntity |
Dtk_Shell is a set of faces bounding a volume. Dtk_Shell can be outer or inner. A Dtk_Body contain at least one open_shell or one outer closed shell and 0 or several inner closed shell.
|
protected |
|
protectedvirtual |
|
protectedvirtual |
Implements Dtk_TopologicalEntity.
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protected |
|
protectedinherited |
|
protected |
|
virtual |
Reimplemented from Dtk_Entity.
Dtk_ErrorStatus Dtk_Shell::AddFace | ( | const Dtk_FacePtr & | inFace, |
Dtk_bool | inFaceOrientation, | ||
DtkFaceType | inFaceType = DtkFaceType_Bounded |
||
) |
Add Face to shell.
[in] | inFace | : Face |
[in] | inOrientation | : Face orientation relative to shell (DTK_TRUE if face material and shell material are on same side) |
[in] | inFaceType | : Type of face ( DtkFaceType_Bounded = topological face or DtkFaceType_Wire = Face used to store wire entities) |
Dtk_ErrorStatus Dtk_Shell::AddWire | ( | Dtk_tab< Dtk_CurvePtr > | inCurveArray | ) |
Add Wire entities.
[in] | inWireArray | : Array of Dtk_Curves |
Dtk_ErrorStatus Dtk_Shell::AddWire | ( | Dtk_tab< Dtk_EdgePtr > | inCurveArray | ) |
Dtk_ErrorStatus Dtk_Shell::AddWire | ( | Dtk_tab< Dtk_PointPtr > | inPointArray | ) |
Add Wire entities.
[in] | inPointArray | : Array of 3D Points |
Dtk_ErrorStatus Dtk_Shell::AddWire | ( | Dtk_tab< Dtk_VertexPtr > | inPointArray | ) |
Dtk_bool Dtk_Shell::CheckIfClosed | ( | ) |
Check if Shell is Closed.
|
protectedvirtualinherited |
Implements Dtk_Entity.
Dtk_ErrorStatus Dtk_Shell::ComputeBoundingBox | ( | Dtk_pnt & | outMin, |
Dtk_pnt & | outMax | ||
) |
|
static |
Create a shell in a body.
[in] | inParentBody | : parent body |
|
static |
Create a shell in a body.
[in] | inParentBody | : parent body |
[in] | inFacesReserve | : Faces size to reserve |
[in] | inWireReserve | : Wire size to reserve |
|
static |
|
virtual |
|
virtualinherited |
|
inherited |
|
virtual |
Dtk_ErrorStatus Dtk_Shell::GetFace | ( | const Dtk_Size_t & | inIndex, |
Dtk_FacePtr & | outFace, | ||
Dtk_bool & | outOrientation, | ||
DtkFaceType | inFaceType = DtkFaceType_Bounded |
||
) | const |
Get Face following Face type.
[in] | inIndex | : index of face |
[out] | outFace | : Face |
[out] | outOrientation | : Face orientation relative to shell |
[in] | inFaceType | : Type of face ( DtkFaceType_Bounded = topological face / DtkFaceType_All = All Faces / DtkFaceType_Wire = Face used to store wire entities) |
Dtk_ErrorStatus Dtk_Shell::GetFace | ( | const Dtk_Size_t & | inIndex, |
Dtk_ID & | outFaceId, | ||
Dtk_bool & | outOrientation, | ||
DtkFaceType | inFaceType = DtkFaceType_Bounded |
||
) | const |
|
inherited |
Get Internal UniqueID.
Dtk_Size_t Dtk_Shell::GetNumFaces | ( | DtkFaceType | inFaceType = DtkFaceType_Bounded | ) | const |
Return Number of Faces following Face type.
[in] | inFaceType | : Type of face you want to count ( DtkFaceType_Bounded = topological face / DtkFaceType_All = All Faces / DtkFaceType_Wire = Face used to store wire entities) |
Dtk_Size_t Dtk_Shell::GetNumWireSet | ( | ) | const |
Return Number of Wire set of entities equivalent to GetNumFaces with type DtkFaceType_Wire.
Dtk_ErrorStatus Dtk_Shell::GetParentBody | ( | Dtk_BodyPtr & | outParentBody | ) | const |
Get Parent Body.
[out] | outParentBody | : parent body |
Dtk_ErrorStatus Dtk_Shell::GetParentVolume | ( | Dtk_VolumePtr & | outParentVolume | ) | const |
Return parent volume of shell.
[out] | outParentVolume | : pointer of parent volume |
|
virtual |
Reimplemented from Dtk_Entity.
|
virtual |
Reimplemented from Dtk_TopologicalEntity.
Dtk_ErrorStatus Dtk_Shell::GetTopologyStatus | ( | ) | const |
Dtk_ErrorStatus Dtk_Shell::GetWireSet | ( | const Dtk_Size_t & | inIndex, |
Dtk_tab< Dtk_EntityPtr > & | outWire | ||
) | const |
Get Wire Set.
[in] | inIndex | : index of wire set |
[out] | outWire | : array of Dtk_Entity (must be Dtk_PointPtr or Dtk_CurvePtr ) |
Dtk_ErrorStatus Dtk_Shell::GetWireSetTopo | ( | const Dtk_Size_t & | inIndex, |
Dtk_tab< Dtk_EntityPtr > & | outWire | ||
) | const |
Dtk_ErrorStatus Dtk_Shell::GetWireSetTopo | ( | const Dtk_Size_t & | inIndex, |
Dtk_tab< Dtk_EntityPtr > & | outWire, | ||
Dtk_tab< Dtk_bool > & | outOrientation, | ||
Dtk_bool & | outLoopOrientation | ||
) | const |
Get Wire Set.
[in] | inIndex | : index of wire set |
[out] | outWire | : array of Dtk_Entity (must be Dtk_VertexPtr or Dtk_EdgePtr ) |
[out] | outOrientation | : array of bool for edge orientation |
Dtk_bool Dtk_Shell::HasWire | ( | ) | const |
Return DTK_TRUE if shell has Wire entities.
|
inherited |
Dtk_ErrorStatus Dtk_Shell::InverseFaceInShell | ( | const Dtk_FacePtr & | inFace | ) |
Dtk_bool Dtk_Shell::IsClosed | ( | ) | const |
Return DTK_TRUE if shell is closed.
Dtk_bool Dtk_Shell::IsOuter | ( | ) | const |
Return DTK_TRUE if shell is outer.
|
virtualinherited |
Reimplemented in Dtk_OffsetSurface.
Dtk_ErrorStatus Dtk_Shell::RemoveFaceFromShell | ( | const Dtk_FacePtr & | inFace | ) |
Dtk_ErrorStatus Dtk_Shell::SetClosedInfo | ( | const Dtk_bool & | inClosedInfo | ) |
Set Closed Info DTK_TRUE if shell is closed.
|
protected |
Dtk_ErrorStatus Dtk_Shell::SetOuterInfo | ( | const Dtk_bool & | inOuterInfo | ) |
Set Outer Info DTK_TRUE if shell is outer.
|
virtual |
Reimplemented from Dtk_TopologicalEntity.
Dtk_ErrorStatus Dtk_Shell::SetParentVolume | ( | const Dtk_ID & | inParentVolumeId | ) |
Dtk_ErrorStatus Dtk_Shell::SetParentVolume | ( | const Dtk_VolumePtr & | inParentVolume | ) |
Set parent volume of shell.
[in] | inParentVolume | : pointer of parent volume |
void Dtk_Shell::SetTopologyStatus | ( | Dtk_ErrorStatus | inStatus | ) |
|
virtualinherited |
Transform object.
[in] | inTransfo | : matrix to apply |
Implements Dtk_Entity.
|
friend |
|
friend |
|
friend |
|
protected |
|
protectedinherited |