The LinkCondition class provides a tool to check if a polychord satisfies the link conditions. More...
#include <polygon_polychord_collapse.h>
Classes | |
struct | LCEdge |
The LCEdge struct represents an edge for the Link Conditions. More... | |
struct | LCVertex |
The LCVertex struct represents a vertex for the Link Conditions. More... | |
Public Member Functions | |
bool | CheckLinkConditions (const PolyMeshType &mesh, const vcg::face::Pos< FaceType > &startPos) |
CheckLinkConditions checks if collapsing the polychord starting from startPos satisfies the link conditions. | |
LinkConditions (const size_t size) | |
LinkCondition constructor. | |
void | Resize (const size_t size) |
Resize just resets the size of the container. | |
Private Types | |
typedef long int | LCEdgeIndex |
typedef std::set< LCEdgeIndex > | LCEdgeStar |
define the set of edges whose star involves a vertex | |
typedef long int | LCVertexIndex |
typedef std::set< LCVertexIndex > | LCVertexStar |
define the star of a vertex | |
Private Member Functions | |
void | LC_computeStars (const PolyMeshType &mesh, const vcg::face::Pos< FaceType > &startPos, std::vector< LCEdge > &lcEdges) |
LC_computeStars computes the stars of edges and vertices of the polychord from the starting pos either to itself (if it's a loop) or to the border edge. | |
void | LC_ResetStars () |
LC_ResetStars resets the stars on a polychord. | |
void | LC_SimulateEdgeCollapse (std::vector< LCEdge > &lcEdges, const LCEdgeIndex edgeInd) |
LC_SimulateEdgeCollapse simulates an edge collapse by updating the stars involved. | |
Private Attributes | |
std::vector< LCVertex > | _lcVertices |
_lcVertices is a vector of vertex stars for the link conditions. |
The LinkCondition class provides a tool to check if a polychord satisfies the link conditions.
Definition at line 261 of file polygon_polychord_collapse.h.
typedef long int vcg::tri::PolychordCollapse< PolyMeshType >::LinkConditions::LCEdgeIndex [private] |
Definition at line 265 of file polygon_polychord_collapse.h.
typedef std::set<LCEdgeIndex> vcg::tri::PolychordCollapse< PolyMeshType >::LinkConditions::LCEdgeStar [private] |
define the set of edges whose star involves a vertex
Definition at line 266 of file polygon_polychord_collapse.h.
typedef long int vcg::tri::PolychordCollapse< PolyMeshType >::LinkConditions::LCVertexIndex [private] |
Definition at line 263 of file polygon_polychord_collapse.h.
typedef std::set<LCVertexIndex> vcg::tri::PolychordCollapse< PolyMeshType >::LinkConditions::LCVertexStar [private] |
define the star of a vertex
Definition at line 264 of file polygon_polychord_collapse.h.
vcg::tri::PolychordCollapse< PolyMeshType >::LinkConditions::LinkConditions | ( | const size_t | size | ) | [inline] |
LinkCondition constructor.
size | The number of vertices of the mesh. |
Definition at line 317 of file polygon_polychord_collapse.h.
bool vcg::tri::PolychordCollapse< PolyMeshType >::LinkConditions::CheckLinkConditions | ( | const PolyMeshType & | mesh, |
const vcg::face::Pos< FaceType > & | startPos | ||
) | [inline] |
CheckLinkConditions checks if collapsing the polychord starting from startPos satisfies the link conditions.
mesh | The mesh for getting the vertex index. |
startPos | The starting position of the polychord. |
Definition at line 337 of file polygon_polychord_collapse.h.
void vcg::tri::PolychordCollapse< PolyMeshType >::LinkConditions::LC_computeStars | ( | const PolyMeshType & | mesh, |
const vcg::face::Pos< FaceType > & | startPos, | ||
std::vector< LCEdge > & | lcEdges | ||
) | [inline, private] |
LC_computeStars computes the stars of edges and vertices of the polychord from the starting pos either to itself (if it's a loop) or to the border edge.
mesh | The mesh for getting the vertex index. |
startPos | Starting position. |
lcEdges | Vector of edge stars. |
compute the star of all the vertices and edges seen from the polychord
Definition at line 388 of file polygon_polychord_collapse.h.
void vcg::tri::PolychordCollapse< PolyMeshType >::LinkConditions::LC_ResetStars | ( | ) | [inline, private] |
LC_ResetStars resets the stars on a polychord.
Definition at line 376 of file polygon_polychord_collapse.h.
void vcg::tri::PolychordCollapse< PolyMeshType >::LinkConditions::LC_SimulateEdgeCollapse | ( | std::vector< LCEdge > & | lcEdges, |
const LCEdgeIndex | edgeInd | ||
) | [inline, private] |
LC_SimulateEdgeCollapse simulates an edge collapse by updating the stars involved.
lcEdges | The vector of edges. |
edgeInd | The in dex of the edge to collapse. |
v2 merges into v1:
update the star of the edges which include v1 and v2 in their star
Definition at line 516 of file polygon_polychord_collapse.h.
void vcg::tri::PolychordCollapse< PolyMeshType >::LinkConditions::Resize | ( | const size_t | size | ) | [inline] |
Resize just resets the size of the container.
size |
Definition at line 323 of file polygon_polychord_collapse.h.
std::vector<LCVertex> vcg::tri::PolychordCollapse< PolyMeshType >::LinkConditions::_lcVertices [private] |
_lcVertices is a vector of vertex stars for the link conditions.
Definition at line 550 of file polygon_polychord_collapse.h.