Classes | Public Types | Static Public Member Functions
vcg::tri::UpdateTopology< UpdateMeshType > Class Template Reference

Generation of per-vertex and per-face topological information. More...

#include <vcg/complex/algorithms/update/topology.h>

List of all members.

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.

Detailed Description

template<class UpdateMeshType>
class vcg::tri::UpdateTopology< UpdateMeshType >

Generation of per-vertex and per-face topological information.

Definition at line 41 of file complex/algorithms/update/topology.h.


Member Typedef Documentation

template<class UpdateMeshType >
typedef MeshType::EdgeIterator vcg::tri::UpdateTopology< UpdateMeshType >::EdgeIterator

Definition at line 52 of file complex/algorithms/update/topology.h.

template<class UpdateMeshType >
typedef MeshType::EdgePointer vcg::tri::UpdateTopology< UpdateMeshType >::EdgePointer

Definition at line 51 of file complex/algorithms/update/topology.h.

template<class UpdateMeshType >
typedef MeshType::EdgeType vcg::tri::UpdateTopology< UpdateMeshType >::EdgeType

Definition at line 50 of file complex/algorithms/update/topology.h.

template<class UpdateMeshType >
typedef MeshType::FaceIterator vcg::tri::UpdateTopology< UpdateMeshType >::FaceIterator

Definition at line 55 of file complex/algorithms/update/topology.h.

template<class UpdateMeshType >
typedef MeshType::FacePointer vcg::tri::UpdateTopology< UpdateMeshType >::FacePointer

Definition at line 54 of file complex/algorithms/update/topology.h.

template<class UpdateMeshType >
typedef MeshType::FaceType vcg::tri::UpdateTopology< UpdateMeshType >::FaceType

Definition at line 53 of file complex/algorithms/update/topology.h.

template<class UpdateMeshType >
typedef UpdateMeshType vcg::tri::UpdateTopology< UpdateMeshType >::MeshType

Definition at line 45 of file complex/algorithms/update/topology.h.

template<class UpdateMeshType >
typedef MeshType::ScalarType vcg::tri::UpdateTopology< UpdateMeshType >::ScalarType

Definition at line 46 of file complex/algorithms/update/topology.h.

template<class UpdateMeshType >
typedef MeshType::VertexIterator vcg::tri::UpdateTopology< UpdateMeshType >::VertexIterator

Definition at line 49 of file complex/algorithms/update/topology.h.

template<class UpdateMeshType >
typedef MeshType::VertexPointer vcg::tri::UpdateTopology< UpdateMeshType >::VertexPointer

Definition at line 48 of file complex/algorithms/update/topology.h.

template<class UpdateMeshType >
typedef MeshType::VertexType vcg::tri::UpdateTopology< UpdateMeshType >::VertexType

Definition at line 47 of file complex/algorithms/update/topology.h.


Member Function Documentation

template<class UpdateMeshType >
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.

template<class UpdateMeshType >
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.

template<class UpdateMeshType >
static void vcg::tri::UpdateTopology< UpdateMeshType >::EdgeEdge ( MeshType m) [inline, static]

Definition at line 533 of file complex/algorithms/update/topology.h.

template<class UpdateMeshType >
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.

template<class UpdateMeshType >
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.

template<class UpdateMeshType >
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.

template<class UpdateMeshType >
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.

template<class UpdateMeshType >
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.

template<class UpdateMeshType >
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.

template<class UpdateMeshType >
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.

template<class UpdateMeshType >
static void vcg::tri::UpdateTopology< UpdateMeshType >::VertexEdge ( MeshType m) [inline, static]

Definition at line 585 of file complex/algorithms/update/topology.h.

template<class UpdateMeshType >
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.

See also:
vcg::vertex::VFAdj
vcg::face::VFAdj

Definition at line 279 of file complex/algorithms/update/topology.h.


The documentation for this class was generated from the following file:


shape_reconstruction
Author(s): Roberto Martín-Martín
autogenerated on Sat Jun 8 2019 18:43:54