CFx SDK Documentation  2023 SP0
Classes | Public Member Functions | Public Attributes | Friends | List of all members
FacetModeler::Face Class Reference

#include <FMMdlFace.h>

Inheritance diagram for FacetModeler::Face:
FacetModeler::Entity

Classes

struct  EdgeLoop
 DOM. More...
 

Public Member Functions

Face * next () const
 
Face * prev () const
 
const OdGePlane & plane () const
 
OdGeVector3d normal () const
 
bool isConvex () const
 
bool hasHoles () const
 
OdUInt32 loopCount () const
 
void setLoopCount (OdUInt32 n)
 
OdUInt32 loopEdgeCount (OdUInt32 iLoopIndex=0) const
 
Edge * edge (OdUInt32 nLoop=0) const
 
Edge * addEdge (OdUInt32 nLoop, FacetModeler::Vertex *pVertex, bool bInverseOrder=false)
 
OdUInt32 findLoop (const Edge *pEdge) const
 
double area () const
 
void deletePlane () const
 
void clearVertexTags ()
 
void clearEdgeTags ()
 
void negate ()
 
void profile (Profile3D &rResult, const OdGePlane *pPlane=0, bool bIncludeHoles=true) const
 
void profile (const OdGePlane &plane, Profile2D &result, bool bIncludeHoles=true, OdArray< const Edge * > *pSourceEdges=NULL) const
 
void profileOuter (Profile3D &rResult, const OdGePlane *pPlane=0) const
 
FaceOrientation orientation () const
 
void setOrientation (FaceOrientation eOrientation)
 
bool intersectLine (const OdGeLinearEnt3d &gLine, OdGePoint3d *pptResult=0, bool *pbCoplanar=0) const
 
Surface * surface () const
 
OdUInt32 color () const
 
void setColor (OdUInt32 color)
 
void debugValidate (bool bValidateEdgePartners=false) const
 DOM. More...
 
void nullLoopEdgesRefs ()
 DOM. More...
 
EdgeLoop * loop (OdUInt32 nLoop) const
 DOM. More...
 
 Face ()
 
 ~Face ()
 
 Face (const Face &)
 
Face & operator= (const Face &)
 
Face * clone (Body &to) const
 
void clear ()
 
void evaluatePlane () const
 
EdgeLoop * insertLoop (OdUInt32 nIndex, Edge *pFirstEdge=0)
 
- Public Member Functions inherited from FacetModeler::Entity
 Entity ()
 
 Entity (const Entity &ent)
 
Entity & operator= (const Entity &)
 
virtual ~Entity ()
 
OdUInt32 flags () const
 
void setFlags (OdUInt32 iFlags)
 
bool isFlagOn (OdUInt32 iFlag) const
 
void setIsFlagOn (OdUInt32 iFlag, bool bOn)
 
FacetModeler::AecTagType tag () const
 
void setTag (FacetModeler::AecTagType nTag)
 

Public Attributes

Face * m_pPrev
 
Face * m_pNext
 
EdgeLoop m_Loops
 
OdGePlane * m_Plane
 
Surface * m_pSurface
 
OdUInt32 m_iColor
 

Friends

class Body
 
class BodyInternalConsistencyRestorer
 
class BodyImpl
 
class Edge
 

Detailed Description

Facet body face.

Definition at line 46 of file FMMdlFace.h.

Constructor & Destructor Documentation

◆ Face() [1/2]

FacetModeler::Face::Face ( )

◆ ~Face()

FacetModeler::Face::~Face ( )

◆ Face() [2/2]

FacetModeler::Face::Face ( const Face &  )

Member Function Documentation

◆ addEdge()

Edge* FacetModeler::Face::addEdge ( OdUInt32  nLoop,
FacetModeler::Vertex *  pVertex,
bool  bInverseOrder = false 
)

Appends edge to the loop specified by the index.

◆ area()

double FacetModeler::Face::area ( ) const

Returns face area.

◆ clear()

void FacetModeler::Face::clear ( )

◆ clearEdgeTags()

void FacetModeler::Face::clearEdgeTags ( )

Clears edge tags.

◆ clearVertexTags()

void FacetModeler::Face::clearVertexTags ( )

Clears vertex tags.

◆ clone()

Face* FacetModeler::Face::clone ( Body &  to) const

◆ color()

OdUInt32 FacetModeler::Face::color ( ) const
inline

Accessor for the color of current face

Definition at line 176 of file FMMdlFace.h.

◆ debugValidate()

void FacetModeler::Face::debugValidate ( bool  bValidateEdgePartners = false) const

DOM.

◆ deletePlane()

void FacetModeler::Face::deletePlane ( ) const

Removes plane information.

◆ edge()

Edge* FacetModeler::Face::edge ( OdUInt32  nLoop = 0) const

Returns first edge from loop with specified index.

Remarks
Each face has at least one loop.

◆ evaluatePlane()

void FacetModeler::Face::evaluatePlane ( ) const

◆ findLoop()

OdUInt32 FacetModeler::Face::findLoop ( const Edge *  pEdge) const

Returns index of loop, containing the edge owned by this face

◆ hasHoles()

bool FacetModeler::Face::hasHoles ( ) const

Returns whether face has holes.

◆ insertLoop()

EdgeLoop* FacetModeler::Face::insertLoop ( OdUInt32  nIndex,
Edge *  pFirstEdge = 0 
)

◆ intersectLine()

bool FacetModeler::Face::intersectLine ( const OdGeLinearEnt3d &  gLine,
OdGePoint3d *  pptResult = 0,
bool *  pbCoplanar = 0 
) const

Returns the point of intersection of this face and the line. If the line is in the plane of this face, the method returns false and *pbCoplanar=true.

◆ isConvex()

bool FacetModeler::Face::isConvex ( ) const

Returns whether face is convex.

◆ loop()

EdgeLoop* FacetModeler::Face::loop ( OdUInt32  nLoop) const

DOM.

◆ loopCount()

OdUInt32 FacetModeler::Face::loopCount ( ) const

Returns loop count.

◆ loopEdgeCount()

OdUInt32 FacetModeler::Face::loopEdgeCount ( OdUInt32  iLoopIndex = 0) const

Returns loop edge count.

◆ negate()

void FacetModeler::Face::negate ( )

Inverts face normal.

◆ next()

Face* FacetModeler::Face::next ( ) const

Returns next face.

◆ normal()

OdGeVector3d FacetModeler::Face::normal ( ) const

Returns face normal.

◆ nullLoopEdgesRefs()

void FacetModeler::Face::nullLoopEdgesRefs ( )

DOM.

◆ operator=()

Face& FacetModeler::Face::operator= ( const Face &  )

◆ orientation()

FaceOrientation FacetModeler::Face::orientation ( ) const

Returns face orientation.

◆ plane()

const OdGePlane& FacetModeler::Face::plane ( ) const

Returns face plane.

◆ prev()

Face* FacetModeler::Face::prev ( ) const

Returns previous face.

◆ profile() [1/2]

void FacetModeler::Face::profile ( const OdGePlane &  plane,
Profile2D &  result,
bool  bIncludeHoles = true,
OdArray< const Edge * > *  pSourceEdges = NULL 
) const

Face's orthogonal projection onto plane.

◆ profile() [2/2]

void FacetModeler::Face::profile ( Profile3D &  rResult,
const OdGePlane *  pPlane = 0,
bool  bIncludeHoles = true 
) const

Returns 3D profile with transform.

◆ profileOuter()

void FacetModeler::Face::profileOuter ( Profile3D &  rResult,
const OdGePlane *  pPlane = 0 
) const
inline

Returns outer 2D profile with transform.

Definition at line 259 of file FMMdlFace.h.

◆ setColor()

void FacetModeler::Face::setColor ( OdUInt32  color)
inline

Accessor for the color of current face

Definition at line 181 of file FMMdlFace.h.

◆ setLoopCount()

void FacetModeler::Face::setLoopCount ( OdUInt32  n)

Returns loop count.

◆ setOrientation()

void FacetModeler::Face::setOrientation ( FaceOrientation  eOrientation)

Sets face orientation.

◆ surface()

Surface* FacetModeler::Face::surface ( ) const
inline

Retuns Surface of this Face

Definition at line 171 of file FMMdlFace.h.

Friends And Related Function Documentation

◆ Body

friend class Body
friend

Definition at line 253 of file FMMdlFace.h.

◆ BodyImpl

friend class BodyImpl
friend

Definition at line 255 of file FMMdlFace.h.

◆ BodyInternalConsistencyRestorer

friend class BodyInternalConsistencyRestorer
friend

Definition at line 254 of file FMMdlFace.h.

◆ Edge

friend class Edge
friend

Definition at line 256 of file FMMdlFace.h.

Member Data Documentation

◆ m_iColor

OdUInt32 FacetModeler::Face::m_iColor

Definition at line 251 of file FMMdlFace.h.

◆ m_Loops

EdgeLoop FacetModeler::Face::m_Loops

Definition at line 242 of file FMMdlFace.h.

◆ m_Plane

OdGePlane* FacetModeler::Face::m_Plane
mutable

Definition at line 245 of file FMMdlFace.h.

◆ m_pNext

Face* FacetModeler::Face::m_pNext

Definition at line 239 of file FMMdlFace.h.

◆ m_pPrev

Face* FacetModeler::Face::m_pPrev

Definition at line 236 of file FMMdlFace.h.

◆ m_pSurface

Surface* FacetModeler::Face::m_pSurface

Definition at line 248 of file FMMdlFace.h.


The documentation for this class was generated from the following file: