In file SM2/SM2Face.h:

class SM2Face : public SM2FaceTopology

2 simplex mesh face

Inheritance:


Public Methods

virtual SM2Face* refine (void)
Refine the face (add a face)
virtual SM2Face* decimate (void)
Decimate the face (remove a face)
VertexSM2FaceIterator getVertexIterator (void) const
returns an iterator over face vertices
EdgeSM2FaceIterator getEdgeIterator (void) const
returns an iterator over face edges
const Vec3 & getCenter (void) const
returns face center
const Vec3 & getNormal (void) const
returns face normal
SM2Edge* getFirstEdge (void) const
returns face first edge
SM2Contour3D* mergeWithFace (SM2Face *f)
merge with another to change mesh topology
SM2Vertex* getFirstVertex (void) const
returns face first vertex
SM2Zone* getZone (void) const
returns face zone
SM2* getMesh (void) const
returns face simplex mesh
SM2Edge* getLongestEdge (void) const
returns face longest edge
SM2Edge* getShortestEdge (void) const
returns face shortest edge
void computeCenterAndNormal (void)
computes face center and normal data members
void computeCenter (void)
computes face center
void computeArea (void)
computes the total area enclosed by the face
void changeZone (void)
modify the face zone based on the zones of its neighboring faces
double getArea () const
returns the area enclosed by a face
void glSet (void) const
call face gl redraw commands
void unselect (void)
unselects this face
void select (void)
selects this face

Public

constructor
SM2Face (SM2 *mesh, SM2Edge *edge, unsigned int orientation, SM2Zone *zone = 0)
constructor
destructor
virtual ~SM2Face ()
removes face from face's zone faces list

Protected Fields

Vec3 center
face center position (used for rendering)
Vec3 normal
normal at face center (used for rendering)
double area
face area
double curvature
face gaussian curvature
double distanceData
face distance to closest data vertex
Vec3 closestData
closest point from a face to the set of 3D data
bool interpolated
wether or not the face is interpolated
unsigned char label
used for recursive labelling functions
double score
face score for the automatic tesselation procedure
unsigned char countRefined
used for the refinement of faces

Private Fields

public : typedef VertexSM2FaceIterator VertexIterator
defines iterators on vertices of a face
typedef EdgeSM2FaceIterator EdgeIterator
defines iterators on edges of a face

Inherited from SM2FaceTopology:

Public Fields

typedef VertexSM2FaceTopologyIterator VertexTopologyIterator
typedef EdgeSM2FaceTopologyIterator EdgeTopologyIterator

Public Methods

void setEdgeTopology(SM2EdgeTopology *e)
void setOrientation(unsigned int o)
SM2EdgeTopology* getFirstEdgeTopology(void) const
unsigned int getOrientation(void) const
SM2VertexTopology* getFirstVertexTopology(void) const
SM2ZoneTopology* getZoneTopology(void) const
void setZone(SM2ZoneTopology *z)
bool isAdjacent(SM2FaceTopology *f) const
void deleted(SM2ZoneTopology *z)
static SM2EdgeTopology* nextEdge(const SM2EdgeTopology *e, int& orientation)
static SM2EdgeTopology* previousEdge(const SM2EdgeTopology *e, int& orientation)

Public

face iterators

iterator over face vertices
unsigned int getVerticesNumber(void) const
returns number of vertices in face
unsigned int getEdgesNumber(void) const
returns number of edges in face
VertexSM2FaceTopologyIterator getVertexTopologyIterator(void) const
returns an iterator over face vertices
EdgeSM2FaceTopologyIterator getEdgeTopologyIterator(void) const
returns an iterator over face edges
int getRef(void) const
returns face reference

Protected Fields

SM2Topology* mesh
SM2EdgeTopology* edge
unsigned int orientation
SM2ZoneTopology* zone
int ref

Documentation

2 simplex mesh face
public : typedef VertexSM2FaceIterator VertexIterator
defines iterators on vertices of a face

typedef EdgeSM2FaceIterator EdgeIterator
defines iterators on edges of a face

Vec3 center
face center position (used for rendering)

Vec3 normal
normal at face center (used for rendering)

double area
face area

double curvature
face gaussian curvature

double distanceData
face distance to closest data vertex

Vec3 closestData
closest point from a face to the set of 3D data

bool interpolated
wether or not the face is interpolated

unsigned char label
used for recursive labelling functions

double score
face score for the automatic tesselation procedure

unsigned char countRefined
used for the refinement of faces

constructor

SM2Face(SM2 *mesh, SM2Edge *edge, unsigned int orientation, SM2Zone *zone = 0)
constructor
Parameters:
mesh - zone mesh
edge - one face edge
orientation - face orientation versus edge orientation (0 or 1)
zone - zone face belongs to

destructor

virtual ~SM2Face()
removes face from face's zone faces list

virtual SM2Face* refine(void)
Refine the face (add a face)

virtual SM2Face* decimate(void)
Decimate the face (remove a face)

VertexSM2FaceIterator getVertexIterator(void) const
returns an iterator over face vertices

EdgeSM2FaceIterator getEdgeIterator(void) const
returns an iterator over face edges

const Vec3 & getCenter(void) const
returns face center

const Vec3 & getNormal(void) const
returns face normal

SM2Edge* getFirstEdge(void) const
returns face first edge

SM2Contour3D* mergeWithFace(SM2Face *f)
merge with another to change mesh topology

SM2Vertex* getFirstVertex(void) const
returns face first vertex

SM2Zone* getZone(void) const
returns face zone

SM2* getMesh(void) const
returns face simplex mesh

SM2Edge* getLongestEdge(void) const
returns face longest edge

SM2Edge* getShortestEdge(void) const
returns face shortest edge

void computeCenterAndNormal(void)
computes face center and normal data members

void computeCenter(void)
computes face center

void computeArea(void)
computes the total area enclosed by the face

void changeZone(void)
modify the face zone based on the zones of its neighboring faces

double getArea() const
returns the area enclosed by a face

void glSet(void) const
call face gl redraw commands

void unselect(void)
unselects this face

void select(void)
selects this face


This class has no child classes.

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de