In file contour/ActiveVertexContour3D.h:

class ActiveVertexContour3D : public VertexContour3D, public ActiveVertex3D

Vertex class of an active contour 3D that include geometric members and method in order to compute internal and external forces

Inheritance:


Public Methods

AContourLine3D* getLine () const
returns the line of the active contour where the vertex belongs
ActiveContour3D* getActiveContour3D () const
returns the active contour where the vertex belongs
EdgeActiveContour3D* getEdge () const
returns the edge pointed by a vertex
ActiveVertexContour3D* getFollowing () const
Returns the right neighboring vertex in the line taking into account the line topology
ActiveVertexContour3D* getPrevious () const
Returns the left neighboring vertex in the line taking into account the line topology
ActiveVertexContour3D* getTopologicalFollowing () const
Returns the right neighboring vertex in the line without taking into account the line topology
ActiveVertexContour3D* getTopologicalPrevious () const
Returns the left neighboring vertex in the line without taking into account the line topology
EdgeContour* removeVertexBasic ()
Remove a vertex by updating the data structure
EdgeActiveContour3D* removeVertex ()
Remove a vertex by calling removeVertexBasic() and updates the maximum rigidity value
double getSimplexAngle () const
return the stored simplex angle
int getMatrixIndex () const
return the index in the stiffness matrix
double getCurvature () const
return the stored curvature
void getReferenceMetricParameters ( double rmp[2])
returns the stored reference metric parameters
void computeSimplexAngle ()
computes the simplex angle
void computeMetricParameters (double mp[2]) const throw(InvalidMetricParameters)
compute the actual metrics parameters
void storeMetricParameters () throw(InvalidMetricParameters)
store the current metrics parameters as the metrics parameters
virtual void updatePosition ()
If the vertex is not fixed, then the position and previous position of that vertex are updated given the current internal and external force
void computeExternalForce ()
compute the external force and store it in force[EXTERNAL]
virtual void fixVertex ()
fix a vertex ie prevent it from moving
virtual void unfixVertex ()
free a vertex ie allow it to move
virtual void setMobility (const bool m)
set the mobility of a vertex

Public

Exception classes
class InvalidMetricParameters : public Exception
Exception thrown when a vertex is found to have a negative metric parameter
Constructors
ActiveVertexContour3D (AContourLine3D *line, Vec3 pos, RangeInformation *ri=0)
Build a vertex of 3D Contour lying on a 3D 2-simplex mesh
ActiveVertexContour3D (ActiveVertexContour3D *v, AContourLine3D *line, Vec3 pos, RangeInformation *ri=0)
Build a vertex of 3D Contour lying on a 3D 2-simplex mesh : constructor used by inherited class since it does not build an edge
Destructor
virtual ~ActiveVertexContour3D ()
empty destructor

Private Fields

double simplexAngle
Simplex angle
double referenceMetricParameters [2]
Metrics parameters
double curvature
reference curvature at a vertex
int matrixIndex
index of the vertex in the stiffness matrix (row number matrixIndex and matrixIndex+1) : it is equal to -1 if it is not in the stiffness matrix

Inherited from VertexContour3D:

Public Methods

Vec3 getPosition() const
Vec3 getTangent() const
Vec3 getBinormal() const
Vec3 getNormal() const
void computeEdgeDirection() throw(ContourLine3D::IllegalGeometry)
void computeTangent() throw(ContourLine3D::IllegalGeometry)
void computeFrenetFrame() throw(ContourLine3D::IllegalGeometry)
void setPosition(const Vec3 &pos)
Contour3D* getContour3D() const

Public

Destructors

virtual ~VertexContour3D()
empty Destructor

Protected Fields

Vec3 position
Vec3 tangent
Vec3 normal
Vec3 binormal

Inherited from VertexContour:

Public Methods

const char* getName() const
Contour* getContour() const
unsigned int getRank() const
unsigned int getRankInLine() const
unsigned int getRef() const
void setName(const char *theName)

Protected Fields

EdgeContour* edge
ContourLine* line

Private Fields

char* name

Documentation

Vertex class of an active contour 3D that include geometric members and method in order to compute internal and external forces
Exception classes

class InvalidMetricParameters: public Exception
Exception thrown when a vertex is found to have a negative metric parameter

double simplexAngle
Simplex angle

double referenceMetricParameters[2]
Metrics parameters

double curvature
reference curvature at a vertex

int matrixIndex
index of the vertex in the stiffness matrix (row number matrixIndex and matrixIndex+1) : it is equal to -1 if it is not in the stiffness matrix

Constructors

ActiveVertexContour3D(AContourLine3D *line, Vec3 pos, RangeInformation *ri=0)
Build a vertex of 3D Contour lying on a 3D 2-simplex mesh
Parameters:
line - the line of the contour (ie its connected component) where the vertex is located
pos - the position of the simplex mesh
ri - the range information that should be stored in the vertex

ActiveVertexContour3D(ActiveVertexContour3D *v, AContourLine3D *line, Vec3 pos, RangeInformation *ri=0)
Build a vertex of 3D Contour lying on a 3D 2-simplex mesh : constructor used by inherited class since it does not build an edge
Parameters:
v - a vertex pointer : not used
line - the line of the contour (ie its connected component) where the vertex is located
pos - the position of the simplex mesh
ri - the range information that should be stored in the vertex

Destructor

virtual ~ActiveVertexContour3D()
empty destructor

AContourLine3D* getLine() const
returns the line of the active contour where the vertex belongs

ActiveContour3D* getActiveContour3D() const
returns the active contour where the vertex belongs

EdgeActiveContour3D* getEdge() const
returns the edge pointed by a vertex

ActiveVertexContour3D* getFollowing() const
Returns the right neighboring vertex in the line taking into account the line topology

ActiveVertexContour3D* getPrevious() const
Returns the left neighboring vertex in the line taking into account the line topology

ActiveVertexContour3D* getTopologicalFollowing() const
Returns the right neighboring vertex in the line without taking into account the line topology

ActiveVertexContour3D* getTopologicalPrevious() const
Returns the left neighboring vertex in the line without taking into account the line topology

EdgeContour* removeVertexBasic()
Remove a vertex by updating the data structure

EdgeActiveContour3D* removeVertex()
Remove a vertex by calling removeVertexBasic() and updates the maximum rigidity value

double getSimplexAngle() const
return the stored simplex angle

int getMatrixIndex() const
return the index in the stiffness matrix

double getCurvature() const
return the stored curvature

void getReferenceMetricParameters( double rmp[2])
returns the stored reference metric parameters

void computeSimplexAngle()
computes the simplex angle

void computeMetricParameters(double mp[2]) const throw(InvalidMetricParameters)
compute the actual metrics parameters

void storeMetricParameters() throw(InvalidMetricParameters)
store the current metrics parameters as the metrics parameters

virtual void updatePosition()
If the vertex is not fixed, then the position and previous position of that vertex are updated given the current internal and external force

void computeExternalForce()
compute the external force and store it in force[EXTERNAL]. To do so, it calls all range data using the local range information

virtual void fixVertex()
fix a vertex ie prevent it from moving

virtual void unfixVertex()
free a vertex ie allow it to move

virtual void setMobility(const bool m)
set the mobility of a vertex


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