#include <DecimaterT.hh>
Public Types | |
typedef DecimaterT< MeshT > | Self |
typedef MeshT | Mesh |
typedef CollapseInfoT< MeshT > | CollapseInfo |
typedef ModBaseT< Self > | Module |
typedef std::vector< Module * > | ModuleList |
typedef Mesh::VertexHandle | VertexHandle |
typedef Mesh::HalfedgeHandle | HalfedgeHandle |
typedef Utils::HeapT < VertexHandle, HeapInterface > | DeciHeap |
Public Member Functions | |
DecimaterT (Mesh &_mesh) | |
Constructor. | |
~DecimaterT () | |
Destructor. | |
bool | initialize () |
bool | is_initialized () const |
Returns whether decimater has been successfully initialized. | |
void | info (std::ostream &_os) |
Print information about modules to _os. | |
Mesh & | mesh () |
access mesh. used in modules. | |
template<typename _Module> | |
bool | add (ModHandleT< _Module > &_mh) |
add module to decimater | |
template<typename _Module> | |
bool | remove (ModHandleT< _Module > &_mh) |
remove module | |
template<typename Module> | |
Module & | module (ModHandleT< Module > &_mh) |
get module referenced by handle _mh | |
size_t | decimate (size_t _n_collapses=0) |
size_t | decimate_to (size_t _n_vertices) |
Decimate to target complexity, returns number of collapses. | |
Data Structures | |
class | HeapInterface |
Heap interface. More... |
bool OpenMesh::Decimater::DecimaterT< Mesh >::initialize | ( | ) | [inline] |
Initialize decimater and decimating modules.
Return values: true ok false No ore more than one non-binary module exist. In that case the decimater is uninitialized!
size_t OpenMesh::Decimater::DecimaterT< Mesh >::decimate | ( | size_t | _n_collapses = 0 |
) | [inline] |
Decimate (perform _n_collapses collapses). Return number of performed collapses. If _n_collapses is not given reduce as much as possible