ml::WEMFace Class Reference

Defines the mesh component: face. More...

#include <WEMFace.h>

Inheritance diagram for ml::WEMFace:

ml::WEMPrimitive ml::WEMPolygon ml::WEMQuad ml::WEMTriangle

List of all members.

Public Member Functions

 WEMFace ()
 Standard constructor.
 WEMFace (const WEMFace &f)
 Standard copy constructor.
virtual ~WEMFace ()
 Standard destructor.
void clone (WEMFace *face)
 Clone given face.
Vector3 getNormal () const
 Get normal.
void setNormal (Vector3 normal)
 Set normal.
virtual void computeNormal ()=0
 Compute normal.
virtual unsigned int getNumNodes () const =0
 Get number of nodes.
virtual int getIndex (WEMNode *node) const =0
 Get index of given node.
virtual WEMNodegetNodeAt (unsigned int index)=0
 Get node at given index in face.
virtual const WEMNodegetNodeAt (unsigned int index) const =0
 Get node at given index in face.
virtual void setNode (unsigned int, WEMNode *)
 Set given node to given index in face.
virtual void replace (WEMNode *orig, WEMNode *replace)=0
 Replace given orig node by given replace node.
virtual bool contains (WEMNode *node) const =0
 Does this face contain the given node?
virtual Vector3 getNodePositionAt (unsigned int index) const =0
 Get a position of a node at a given index.
virtual int getIndex (WEMEdge *edge) const =0
 Get index of given edge.
virtual WEMEdgegetEdgeAt (unsigned int)
 Get edge at given index in face.
virtual const WEMEdgegetEdgeAt (unsigned int) const
 Get edge at given index in face.
virtual void setEdge (unsigned int, WEMEdge *)
 Set given edge to given index in face.
virtual void replace (WEMEdge *orig, WEMEdge *replace)=0
 Replace given orig node by given replace edge.
virtual bool contains (WEMEdge *edge) const =0
 Does this face contain the given edge?
virtual Vector3 getCentroid () const =0
 Returns the geometric centroid of a face.
virtual double getPerimeter () const =0
 Calculate perimeter of face.
virtual double getArea () const =0
 Calculate area of face.
virtual WEMBoundingBox getBoundingBox () const
 Calculate the bounding box of face.
virtual WEMNodegetOther (WEMNode *n1, WEMNode *n2)=0
 Returns the node incident to this face that is not given as a parameter.
virtual const WEMNodegetOther (WEMNode *n1, WEMNode *n2) const =0
 Returns the node incident to this face that is not given as a parameter.
virtual WEMEdgegetOther (WEMEdge *e1, WEMEdge *e2)=0
 Returns the edge incident to this face that is not given as a parameter.
virtual const WEMEdgegetOther (WEMEdge *e1, WEMEdge *e2) const =0
 Returns the edge incident to this face that is not given as a parameter.
virtual WEMEdgegetEdgeNotContaining (WEMNode *n)=0
 Returns the edge not containing given node.
virtual const WEMEdgegetEdgeNotContaining (WEMNode *n) const =0
 Returns the edge not containing given node.
virtual double getQuality () const =0
 Calculate quality of face.
virtual int isConcave () const =0
 Is this face a concave polygon? Return number of concavities.
virtual void mirror ()=0
 Mirror face -> edge information gets corrupted!!! Use WEM::buildEdgeConnectivity afterwards.

Protected Attributes

Vector3 _normal
 Normal.


Detailed Description

Defines the mesh component: face.

Definition at line 30 of file WEMFace.h.


Constructor & Destructor Documentation

ml::WEMFace::WEMFace (  ) 

Standard constructor.

ml::WEMFace::WEMFace ( const WEMFace f  ) 

Standard copy constructor.

virtual ml::WEMFace::~WEMFace (  )  [virtual]

Standard destructor.


Member Function Documentation

void ml::WEMFace::clone ( WEMFace face  ) 

Clone given face.

virtual void ml::WEMFace::computeNormal (  )  [pure virtual]

Compute normal.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual bool ml::WEMFace::contains ( WEMEdge edge  )  const [pure virtual]

Does this face contain the given edge?

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual bool ml::WEMFace::contains ( WEMNode node  )  const [pure virtual]

Does this face contain the given node?

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual double ml::WEMFace::getArea (  )  const [pure virtual]

Calculate area of face.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual WEMBoundingBox ml::WEMFace::getBoundingBox (  )  const [virtual]

Calculate the bounding box of face.

virtual Vector3 ml::WEMFace::getCentroid (  )  const [pure virtual]

Returns the geometric centroid of a face.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual const WEMEdge* ml::WEMFace::getEdgeAt ( unsigned int   )  const [inline, virtual]

Get edge at given index in face.

Reimplemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

Definition at line 75 of file WEMFace.h.

virtual WEMEdge* ml::WEMFace::getEdgeAt ( unsigned int   )  [inline, virtual]

Get edge at given index in face.

Reimplemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

Definition at line 73 of file WEMFace.h.

virtual const WEMEdge* ml::WEMFace::getEdgeNotContaining ( WEMNode n  )  const [pure virtual]

Returns the edge not containing given node.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual WEMEdge* ml::WEMFace::getEdgeNotContaining ( WEMNode n  )  [pure virtual]

Returns the edge not containing given node.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual int ml::WEMFace::getIndex ( WEMEdge edge  )  const [pure virtual]

Get index of given edge.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual int ml::WEMFace::getIndex ( WEMNode node  )  const [pure virtual]

Get index of given node.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual const WEMNode* ml::WEMFace::getNodeAt ( unsigned int  index  )  const [pure virtual]

Get node at given index in face.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual WEMNode* ml::WEMFace::getNodeAt ( unsigned int  index  )  [pure virtual]

Get node at given index in face.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual Vector3 ml::WEMFace::getNodePositionAt ( unsigned int  index  )  const [pure virtual]

Get a position of a node at a given index.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

Vector3 ml::WEMFace::getNormal (  )  const [inline]

Get normal.

Definition at line 47 of file WEMFace.h.

virtual unsigned int ml::WEMFace::getNumNodes (  )  const [pure virtual]

Get number of nodes.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual const WEMEdge* ml::WEMFace::getOther ( WEMEdge e1,
WEMEdge e2 
) const [pure virtual]

Returns the edge incident to this face that is not given as a parameter.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual WEMEdge* ml::WEMFace::getOther ( WEMEdge e1,
WEMEdge e2 
) [pure virtual]

Returns the edge incident to this face that is not given as a parameter.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual const WEMNode* ml::WEMFace::getOther ( WEMNode n1,
WEMNode n2 
) const [pure virtual]

Returns the node incident to this face that is not given as a parameter.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual WEMNode* ml::WEMFace::getOther ( WEMNode n1,
WEMNode n2 
) [pure virtual]

Returns the node incident to this face that is not given as a parameter.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual double ml::WEMFace::getPerimeter (  )  const [pure virtual]

Calculate perimeter of face.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual double ml::WEMFace::getQuality (  )  const [pure virtual]

Calculate quality of face.

The quality of a triangle is defined as the ratio of the square root of its surface area to its perimeter relative to this same ratio for an equilateral triangle with the same area. The quality is then one for an equilateral triangle and tends to zero for a very stretched triangle.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual int ml::WEMFace::isConcave (  )  const [pure virtual]

Is this face a concave polygon? Return number of concavities.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual void ml::WEMFace::mirror (  )  [pure virtual]

Mirror face -> edge information gets corrupted!!! Use WEM::buildEdgeConnectivity afterwards.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual void ml::WEMFace::replace ( WEMEdge orig,
WEMEdge replace 
) [pure virtual]

Replace given orig node by given replace edge.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual void ml::WEMFace::replace ( WEMNode orig,
WEMNode replace 
) [pure virtual]

Replace given orig node by given replace node.

Implemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

virtual void ml::WEMFace::setEdge ( unsigned int  ,
WEMEdge  
) [inline, virtual]

Set given edge to given index in face.

Reimplemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

Definition at line 77 of file WEMFace.h.

virtual void ml::WEMFace::setNode ( unsigned int  ,
WEMNode  
) [inline, virtual]

Set given node to given index in face.

Reimplemented in ml::WEMPolygon, ml::WEMQuad, and ml::WEMTriangle.

Definition at line 62 of file WEMFace.h.

void ml::WEMFace::setNormal ( Vector3  normal  )  [inline]

Set normal.

Definition at line 49 of file WEMFace.h.


Member Data Documentation

Normal.

Definition at line 119 of file WEMFace.h.


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

Generated on Sat Sep 3 18:39:41 2011 for MeVisLab Toolbox Reference by  doxygen 1.5.8