Generation of per-vertex and per-face topological information. More...
#include <vcg/complex/algorithms/update/topology.h>
Classes | |
class | PEdge |
Auxiliairy data structure for computing face face adjacency information. More... | |
class | PEdgeTex |
Auxiliairy data structure for computing face face adjacency information. More... | |
class | PVertexEdge |
Public Types | |
typedef MeshType::EdgeIterator | EdgeIterator |
typedef MeshType::EdgePointer | EdgePointer |
typedef MeshType::EdgeType | EdgeType |
typedef MeshType::FaceIterator | FaceIterator |
typedef MeshType::FacePointer | FacePointer |
typedef MeshType::FaceType | FaceType |
typedef UpdateMeshType | MeshType |
typedef MeshType::ScalarType | ScalarType |
typedef MeshType::VertexIterator | VertexIterator |
typedef MeshType::VertexPointer | VertexPointer |
typedef MeshType::VertexType | VertexType |
Static Public Member Functions | |
static void | AllocateEdge (MeshType &m) |
Initialize the edge vector all the edges that can be inferred from current face vector, setting up all the current adjacency relations. | |
static void | ClearFaceFace (MeshType &m) |
Clear the Face-Face topological relation setting each involved pointer to null. useful when you passed a mesh with ff adjacency to an algorithm that does not use it and could have messed it. | |
static void | EdgeEdge (MeshType &m) |
static void | FaceFace (MeshType &m) |
Update the Face-Face topological relation by allowing to retrieve for each face what other faces shares their edges. | |
static void | FaceFaceFromTexCoord (MeshType &m) |
Update the Face-Face topological relation so that it reflects the per-wedge texture connectivity. | |
static void | FillEdgeVector (MeshType &m, std::vector< PEdge > &edgeVec, bool includeFauxEdge=true) |
static void | FillUniqueEdgeVector (MeshType &m, std::vector< PEdge > &edgeVec, bool includeFauxEdge=true) |
static void | TestFaceFace (MeshType &m) |
Test correctness of FFtopology (only for 2Manifold Meshes!) | |
static void | TestVertexEdge (MeshType &m) |
Test correctness of VEtopology. | |
static void | TestVertexFace (MeshType &m) |
Test correctness of VFtopology. | |
static void | VertexEdge (MeshType &m) |
static void | VertexFace (MeshType &m) |
Update the Vertex-Face topological relation. |
Generation of per-vertex and per-face topological information.
Definition at line 41 of file complex/algorithms/update/topology.h.
typedef MeshType::EdgeIterator vcg::tri::UpdateTopology< UpdateMeshType >::EdgeIterator |
Definition at line 52 of file complex/algorithms/update/topology.h.
typedef MeshType::EdgePointer vcg::tri::UpdateTopology< UpdateMeshType >::EdgePointer |
Definition at line 51 of file complex/algorithms/update/topology.h.
typedef MeshType::EdgeType vcg::tri::UpdateTopology< UpdateMeshType >::EdgeType |
Definition at line 50 of file complex/algorithms/update/topology.h.
typedef MeshType::FaceIterator vcg::tri::UpdateTopology< UpdateMeshType >::FaceIterator |
Definition at line 55 of file complex/algorithms/update/topology.h.
typedef MeshType::FacePointer vcg::tri::UpdateTopology< UpdateMeshType >::FacePointer |
Definition at line 54 of file complex/algorithms/update/topology.h.
typedef MeshType::FaceType vcg::tri::UpdateTopology< UpdateMeshType >::FaceType |
Definition at line 53 of file complex/algorithms/update/topology.h.
typedef UpdateMeshType vcg::tri::UpdateTopology< UpdateMeshType >::MeshType |
Definition at line 45 of file complex/algorithms/update/topology.h.
typedef MeshType::ScalarType vcg::tri::UpdateTopology< UpdateMeshType >::ScalarType |
Definition at line 46 of file complex/algorithms/update/topology.h.
typedef MeshType::VertexIterator vcg::tri::UpdateTopology< UpdateMeshType >::VertexIterator |
Definition at line 49 of file complex/algorithms/update/topology.h.
typedef MeshType::VertexPointer vcg::tri::UpdateTopology< UpdateMeshType >::VertexPointer |
Definition at line 48 of file complex/algorithms/update/topology.h.
typedef MeshType::VertexType vcg::tri::UpdateTopology< UpdateMeshType >::VertexType |
Definition at line 47 of file complex/algorithms/update/topology.h.
static void vcg::tri::UpdateTopology< UpdateMeshType >::AllocateEdge | ( | MeshType & | m | ) | [inline, static] |
Initialize the edge vector all the edges that can be inferred from current face vector, setting up all the current adjacency relations.
Definition at line 141 of file complex/algorithms/update/topology.h.
static void vcg::tri::UpdateTopology< UpdateMeshType >::ClearFaceFace | ( | MeshType & | m | ) | [inline, static] |
Clear the Face-Face topological relation setting each involved pointer to null. useful when you passed a mesh with ff adjacency to an algorithm that does not use it and could have messed it.
Definition at line 212 of file complex/algorithms/update/topology.h.
static void vcg::tri::UpdateTopology< UpdateMeshType >::EdgeEdge | ( | MeshType & | m | ) | [inline, static] |
Definition at line 533 of file complex/algorithms/update/topology.h.
static void vcg::tri::UpdateTopology< UpdateMeshType >::FaceFace | ( | MeshType & | m | ) | [inline, static] |
Update the Face-Face topological relation by allowing to retrieve for each face what other faces shares their edges.
Definition at line 229 of file complex/algorithms/update/topology.h.
static void vcg::tri::UpdateTopology< UpdateMeshType >::FaceFaceFromTexCoord | ( | MeshType & | m | ) | [inline, static] |
Update the Face-Face topological relation so that it reflects the per-wedge texture connectivity.
Using this function two faces are adjacent along the FF relation IFF the two faces have matching texture coords along the involved edge. In other words F1->FFp(i) == F2 iff F1 and F2 have the same tex coords along edge i
Definition at line 360 of file complex/algorithms/update/topology.h.
static void vcg::tri::UpdateTopology< UpdateMeshType >::FillEdgeVector | ( | MeshType & | m, |
std::vector< PEdge > & | edgeVec, | ||
bool | includeFauxEdge = true |
||
) | [inline, static] |
Fill a vector with all the edges of the mesh. each edge is stored in the vector the number of times that it appears in the mesh, with the referring face. optionally it can skip the faux edges (to retrieve only the real edges of a triangulated polygonal mesh)
Definition at line 116 of file complex/algorithms/update/topology.h.
static void vcg::tri::UpdateTopology< UpdateMeshType >::FillUniqueEdgeVector | ( | MeshType & | m, |
std::vector< PEdge > & | edgeVec, | ||
bool | includeFauxEdge = true |
||
) | [inline, static] |
Definition at line 126 of file complex/algorithms/update/topology.h.
static void vcg::tri::UpdateTopology< UpdateMeshType >::TestFaceFace | ( | MeshType & | m | ) | [inline, static] |
Test correctness of FFtopology (only for 2Manifold Meshes!)
Definition at line 473 of file complex/algorithms/update/topology.h.
static void vcg::tri::UpdateTopology< UpdateMeshType >::TestVertexEdge | ( | MeshType & | m | ) | [inline, static] |
Test correctness of VEtopology.
Definition at line 396 of file complex/algorithms/update/topology.h.
static void vcg::tri::UpdateTopology< UpdateMeshType >::TestVertexFace | ( | MeshType & | m | ) | [inline, static] |
Test correctness of VFtopology.
Definition at line 433 of file complex/algorithms/update/topology.h.
static void vcg::tri::UpdateTopology< UpdateMeshType >::VertexEdge | ( | MeshType & | m | ) | [inline, static] |
Definition at line 585 of file complex/algorithms/update/topology.h.
static void vcg::tri::UpdateTopology< UpdateMeshType >::VertexFace | ( | MeshType & | m | ) | [inline, static] |
Update the Vertex-Face topological relation.
The function allows to retrieve for each vertex the list of faces sharing this vertex. After this call all the VF component are initialized. Isolated vertices have a null list of faces.
Definition at line 279 of file complex/algorithms/update/topology.h.