#include <freecloth/geom/geMesh.h>
Inheritance diagram for GeMesh::FaceWrapper:
Public Types | |
enum | { NB_VERTICES = 3 } |
Public Methods | |
FaceWrapper () | |
Construct invalid wrapper - mostly used by iterator classes. | |
FaceWrapper (const GeMesh &, FaceId) | |
FaceId | getFaceId () const |
UInt32 | getNbVertices () const |
VertexId | getVertexId (FaceVertexId) const |
const VertexType & | getVertex (FaceVertexId) const |
TextureVertexId | getTextureVertexId (FaceVertexId) const |
const TextureVertexType & | getTextureVertex (FaceVertexId) const |
Float | calcArea () const |
Calculate area of face. | |
GeVector | calcNormal () const |
Calculate the normal for the face. Guaranteed to be a unit vector. | |
GePoint | calcBarycentric (const GePoint &p) const |
Calculate the barycentric co-ordinates of p. Barycentric co-ordinates express p as a linear combination of the vertices of the face. | |
Private Methods | |
FaceWrapper (const GeMesh *, FaceId) | |
bool | isValid () const |
Static Private Methods | |
GePoint | calcBarycentric (const GePoint &p, const GePoint &v1, const GePoint &v2, const GePoint &v3) |
Private Attributes | |
const GeMesh * | _mesh |
FaceId | _faceId |
Friends | |
class | GeMesh::FaceConstIterator |
class | GeMeshBuilder |
Each face contains indices into the vertex and texture vertex arrays. From the vertices, other information can be calculated.
At present, all faces are triangular.
Pattern: Facade
Definition at line 210 of file geMesh.h.
|
|