#include <tri_edge_collapse_quadric.h>

Public Types | |
| typedef TriMeshType::CoordType | CoordType |
| The coordinate type. | |
| typedef TEC::EdgeType | EdgeType |
| half edge type | |
| typedef TriMeshType::FaceType | FaceType |
| The tetrahedron type. | |
| typedef TriEdgeCollapse < TriMeshType, MYTYPE > ::HeapElem | HeapElem |
| typedef TriEdgeCollapse < TriMeshType, MYTYPE > ::HeapType | HeapType |
| enum | Hint { HNHasFFTopology = 0x0001, HNHasVFTopology = 0x0002, HNHasBorderFlag = 0x0004 } |
| typedef HelperType | QH |
| typedef TriEdgeCollapseQuadricParameter | QParameter |
| typedef math::Quadric< double > | QuadricType |
| typedef TriMeshType::ScalarType | ScalarType |
| typedef vcg::tri::TriEdgeCollapse < TriMeshType, MYTYPE > | TEC |
| typedef TriMeshType::VertexType | VertexType |
| The vertex type. | |
Public Member Functions | |
| CoordType | ComputeMinimal () |
| ScalarType | ComputePriority () |
| * | |
| void | Execute (TriMeshType &m) |
| bool | IsFeasible () |
| return true if no constraint disallow this operation to be performed (ex: change of topology in edge collapses) | |
| TriEdgeCollapseQuadric (const EdgeType &p, int i) | |
| void | UpdateHeap (HeapType &h_ret) |
Static Public Member Functions | |
| static void | ClearHint (Hint hn) |
| static void | Finalize (TriMeshType &m, HeapType &) |
| static float | HeapSimplexRatio () |
| static int & | Hnt () |
| static void | Init (TriMeshType &m, HeapType &h_ret) |
| static void | InitQuadric (TriMeshType &m) |
| static bool | IsSetHint (Hint hn) |
| static bool | IsSymmetric () |
| static bool | IsVertexStable () |
| static QParameter & | Params () |
| static void | SetDefaultParams () |
| static void | SetHint (Hint hn) |
| static std::vector< typename TriMeshType::VertexPointer > & | WV () |
Definition at line 164 of file tri_edge_collapse_quadric.h.
| typedef TriMeshType::CoordType vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::CoordType |
The coordinate type.
Reimplemented from vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE >.
Definition at line 171 of file tri_edge_collapse_quadric.h.
| typedef TEC::EdgeType vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::EdgeType |
half edge type
Reimplemented from vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE >.
Reimplemented in MyTriEdgeCollapse.
Definition at line 168 of file tri_edge_collapse_quadric.h.
| typedef TriMeshType::FaceType vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::FaceType |
The tetrahedron type.
Reimplemented from vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE >.
Definition at line 174 of file tri_edge_collapse_quadric.h.
| typedef TriEdgeCollapse<TriMeshType, MYTYPE>::HeapElem vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::HeapElem |
Reimplemented from vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE >.
Definition at line 170 of file tri_edge_collapse_quadric.h.
| typedef TriEdgeCollapse<TriMeshType, MYTYPE>::HeapType vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::HeapType |
Reimplemented from vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE >.
Definition at line 169 of file tri_edge_collapse_quadric.h.
| typedef HelperType vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::QH |
Definition at line 177 of file tri_edge_collapse_quadric.h.
| typedef TriEdgeCollapseQuadricParameter vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::QParameter |
Definition at line 176 of file tri_edge_collapse_quadric.h.
| typedef math::Quadric< double > vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::QuadricType |
Definition at line 173 of file tri_edge_collapse_quadric.h.
| typedef TriMeshType::ScalarType vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::ScalarType |
Reimplemented from vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE >.
Definition at line 172 of file tri_edge_collapse_quadric.h.
| typedef vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE > vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::TEC |
Definition at line 167 of file tri_edge_collapse_quadric.h.
| typedef TriMeshType::VertexType vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::VertexType |
The vertex type.
Reimplemented from vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE >.
Definition at line 175 of file tri_edge_collapse_quadric.h.
| enum vcg::tri::TriEdgeCollapseQuadric::Hint |
Definition at line 183 of file tri_edge_collapse_quadric.h.
| vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::TriEdgeCollapseQuadric | ( | const EdgeType & | p, | |
| int | i | |||
| ) | [inline] |
Definition at line 200 of file tri_edge_collapse_quadric.h.
| static void vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::ClearHint | ( | Hint | hn | ) | [inline, static] |
Definition at line 192 of file tri_edge_collapse_quadric.h.
| CoordType vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::ComputeMinimal | ( | ) | [inline] |
Definition at line 606 of file tri_edge_collapse_quadric.h.
| ScalarType vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::ComputePriority | ( | ) | [inline, virtual] |
*
Reimplemented from vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE >.
Definition at line 370 of file tri_edge_collapse_quadric.h.
| void vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::Execute | ( | TriMeshType & | m | ) | [inline] |
Reimplemented from vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE >.
Definition at line 215 of file tri_edge_collapse_quadric.h.
| static void vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::Finalize | ( | TriMeshType & | m, | |
| HeapType & | ||||
| ) | [inline, static] |
Definition at line 230 of file tri_edge_collapse_quadric.h.
| static float vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::HeapSimplexRatio | ( | ) | [inline, static] |
An approximation of the size of the heap with respect of the number of simplex of the mesh. When this number is exceeded a clear heap purging is performed. so it is should be reasonably larger than the minimum expected size to avoid too frequent clear heap For example for symmetric edge collapse a 5 is a good guess. while for non symmetric edge collapse a larger number like 9 is a better choice
Reimplemented from vcg::LocalModification< MeshType >.
Definition at line 343 of file tri_edge_collapse_quadric.h.
| static int& vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::Hnt | ( | ) | [inline, static] |
Definition at line 189 of file tri_edge_collapse_quadric.h.
| static void vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::Init | ( | TriMeshType & | m, | |
| HeapType & | h_ret | |||
| ) | [inline, static] |
Reimplemented from vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE >.
Definition at line 252 of file tri_edge_collapse_quadric.h.
| static void vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::InitQuadric | ( | TriMeshType & | m | ) | [inline, static] |
Definition at line 521 of file tri_edge_collapse_quadric.h.
| bool vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::IsFeasible | ( | ) | [inline, virtual] |
return true if no constraint disallow this operation to be performed (ex: change of topology in edge collapses)
Reimplemented from vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE >.
Definition at line 209 of file tri_edge_collapse_quadric.h.
| static bool vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::IsSetHint | ( | Hint | hn | ) | [inline, static] |
Definition at line 193 of file tri_edge_collapse_quadric.h.
| static bool vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::IsSymmetric | ( | ) | [inline, static] |
Reimplemented from vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE >.
Definition at line 344 of file tri_edge_collapse_quadric.h.
| static bool vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::IsVertexStable | ( | ) | [inline, static] |
Definition at line 345 of file tri_edge_collapse_quadric.h.
| static QParameter& vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::Params | ( | ) | [inline, static] |
Definition at line 179 of file tri_edge_collapse_quadric.h.
| static void vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::SetDefaultParams | ( | ) | [inline, static] |
Definition at line 346 of file tri_edge_collapse_quadric.h.
| static void vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::SetHint | ( | Hint | hn | ) | [inline, static] |
Definition at line 191 of file tri_edge_collapse_quadric.h.
| void vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::UpdateHeap | ( | HeapType & | h_ret | ) | [inline] |
Reimplemented from vcg::tri::TriEdgeCollapse< TriMeshType, MYTYPE >.
Definition at line 463 of file tri_edge_collapse_quadric.h.
| static std::vector<typename TriMeshType::VertexPointer>& vcg::tri::TriEdgeCollapseQuadric< TriMeshType, MYTYPE, HelperType >::WV | ( | ) | [inline, static] |
Definition at line 196 of file tri_edge_collapse_quadric.h.