In file SM2/SM2Zone.h:

class SM2Zone : public SM2ZoneTopology ifdef GRAPHICS, public Surface endif

2 simplex mesh zone

Inheritance:


Public Methods

SM2* getMesh (void) const
returns zone mesh
SM2Vertex* getVertex (void) const
returns one zone vertex (if possible, a vertex that is not shared by other zones
void setLocality (double locality)
set the locality of all zone vertices to given value and switch to corresponding deformation mode
virtual void buildWireframe (void)
wireframe display list creation callback
virtual void buildSolid (void)
solid display list creation callback
virtual void setRedrawOrder (unsigned int order)
set object redraw order for transparency sorting
void unselect (void)
unselects this zone
void select (void)
selects this zone
void apply (void (SM2Vertex::*ptr)(void))
apply member function on each zone vertex
void apply (void (SM2Vertex::*ptr)(int), int val)
apply member function on each zone vertex
void apply (void (SM2Vertex::*ptr)(const unsigned int), const unsigned int val)
apply member function on each zone vertex
void apply (void (SM2Vertex::*ptr)(float), float val)
apply member function on each zone vertex
void apply (void (SM2Vertex::*ptr)(const double), const double val)
apply member function on each zone vertex
void refine (void)
Refines a mesh zone (approx
void decimate (void)
Decimates a mesh zone (half less faces if possible) returns the new number of faces
void expand (void)
expand topologically the zone by adding closest topological faces : equivalent to dilation in mathematical morphology
void shrink (void)
shrink topologically the zone by removing faces adjacent to other zones equivalent to erosion in mathematical morphology
void keepMainComponent (void)
keep the main connected component of a zone
void cut (void)
this function defines contour(s) around that zone and remove the faces, vertices belonging to the zone

Public

constructors
SM2Zone (SM2 *mesh, const TclString& name)
constructor
SM2Zone (const SM2Zone& org)
copy constructor
destructor
~SM2Zone ()
removes zone from zone's faces

Protected Fields

Vec3 center
zone center point
double area
zone area
double medianArea
median value of zone faces area (used for refinement)
unsigned int redrawOrder
redraw order (for transparency redraw)

Private Methods

unsigned int labelAroundFace (SM2Face *f, unsigned int l, unsigned int nb)
label faces belonging to a zone connected to a given face f

Inherited from SM2ZoneTopology:

Public Fields

friend class SM2

Public Methods

const TclString& getName(void) const
int getRef(void) const
SM2VertexTopology* getVertexTopology(void) const
void setName(const TclString& n)
void deleted(SM2FaceTopology *face)
void newFace(SM2FaceTopology *face)
virtual unsigned int regularizeZoneTopology(void)

Public

constructor

SM2ZoneTopology(SM2Topology *mesh, const TclString& name)
constructors
SM2ZoneTopology(const SM2ZoneTopology& org)
copy constructor

Protected Fields

TclString name
SM2Topology* mesh
int ref
std::list <SM2FaceTopology *> faces

Documentation

2 simplex mesh zone
Vec3 center
zone center point

double area
zone area

double medianArea
median value of zone faces area (used for refinement)

unsigned int redrawOrder
redraw order (for transparency redraw)

unsigned int labelAroundFace(SM2Face *f, unsigned int l, unsigned int nb)
label faces belonging to a zone connected to a given face f. It return the total number of faces of the connected component

constructors

SM2Zone(SM2 *mesh, const TclString& name)
constructor
Parameters:
mesh - zone mesh
name - zone name

SM2Zone(const SM2Zone& org)
copy constructor

destructor

~SM2Zone()
removes zone from zone's faces

SM2* getMesh(void) const
returns zone mesh

SM2Vertex* getVertex(void) const
returns one zone vertex (if possible, a vertex that is not shared by other zones

void setLocality(double locality)
set the locality of all zone vertices to given value and switch to corresponding deformation mode
Parameters:
locality - new locality value (0.0 means global, 1.0 means local)

virtual void buildWireframe(void)
wireframe display list creation callback

virtual void buildSolid(void)
solid display list creation callback

virtual void setRedrawOrder(unsigned int order)
set object redraw order for transparency sorting
Parameters:
order - redraw order (should be 1 or 2)

void unselect(void)
unselects this zone

void select(void)
selects this zone

void apply(void (SM2Vertex::*ptr)(void))
apply member function on each zone vertex
Parameters:
ptr - vertex member function without any arguments

void apply(void (SM2Vertex::*ptr)(int), int val)
apply member function on each zone vertex
Parameters:
ptr - vertex member function with a single integer argument
val - integer value to transmit as argument

void apply(void (SM2Vertex::*ptr)(const unsigned int), const unsigned int val)
apply member function on each zone vertex
Parameters:
ptr - vertex member function with a single unsigned integer argument
val - unsigned integer value to transmit as argument

void apply(void (SM2Vertex::*ptr)(float), float val)
apply member function on each zone vertex
Parameters:
ptr - vertex member function with a single float argument
val - float value to transmit as argument

void apply(void (SM2Vertex::*ptr)(const double), const double val)
apply member function on each zone vertex
Parameters:
ptr - vertex member function with a single double argument
val - double value to transmit as argument

void refine(void)
Refines a mesh zone (approx. three times more faces) returns the new number of faces

void decimate(void)
Decimates a mesh zone (half less faces if possible) returns the new number of faces

void expand(void)
expand topologically the zone by adding closest topological faces : equivalent to dilation in mathematical morphology

void shrink(void)
shrink topologically the zone by removing faces adjacent to other zones equivalent to erosion in mathematical morphology

void keepMainComponent(void)
keep the main connected component of a zone

void cut(void)
this function defines contour(s) around that zone and remove the faces, vertices belonging to the zone


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