Developer Documentation
|
#include <OpenFlipper/libs_required/OpenMesh/src/OpenMesh/Tools/Decimater/McDecimaterT.hh>
Public Types | |
typedef McDecimaterT< MeshT > | Self |
typedef MeshT | Mesh |
typedef CollapseInfoT< MeshT > | CollapseInfo |
typedef ModBaseT< MeshT > | Module |
typedef std::vector< Module * > | ModuleList |
typedef ModuleList::iterator | ModuleListIterator |
![]() | |
typedef BaseDecimaterT< MeshT > | Self |
typedef MeshT | Mesh |
typedef CollapseInfoT< MeshT > | CollapseInfo |
typedef ModBaseT< MeshT > | Module |
typedef std::vector< Module * > | ModuleList |
typedef ModuleList::iterator | ModuleListIterator |
Public Member Functions | |
McDecimaterT (Mesh &_mesh) | |
Constructor. More... | |
~McDecimaterT () | |
Destructor. More... | |
size_t | decimate (size_t _n_collapses, bool _only_selected=false) |
Decimate (perform _n_collapses collapses). Return number of performed collapses. If _n_collapses is not given reduce as much as possible. More... | |
size_t | decimate_to (size_t _n_vertices, bool _only_selected=false) |
Decimate the mesh to a desired target vertex complexity. More... | |
size_t | decimate_to_faces (size_t _n_vertices=0, size_t _n_faces=0, bool _only_selected=false) |
Attempts to decimate the mesh until a desired vertex or face complexity is achieved. More... | |
size_t | decimate_constraints_only (float _factor, bool _only_selected=false) |
size_t | samples () |
void | set_samples (const size_t _value) |
![]() | |
BaseDecimaterT (Mesh &_mesh) | |
bool | initialize () |
bool | is_initialized () const |
Returns whether decimater has been successfully initialized. More... | |
void | info (std::ostream &_os) |
Print information about modules to _os. More... | |
void | set_observer (Observer *_o) |
Add observer. More... | |
Observer * | observer () |
Get current observer of a decimater. More... | |
Mesh & | mesh () |
access mesh. used in modules. More... | |
template<typename _Module > | |
bool | add (ModHandleT< _Module > &_mh) |
add module to decimater More... | |
template<typename _Module > | |
bool | remove (ModHandleT< _Module > &_mh) |
remove module More... | |
template<typename Module > | |
Module & | module (ModHandleT< Module > &_mh) |
get module referenced by handle _mh More... | |
Private Attributes | |
Mesh & | mesh_ |
size_t | randomSamples_ |
Additional Inherited Members | |
![]() | |
bool | notify_observer (size_t _n_collapses) |
returns false, if abort requested by observer More... | |
void | set_uninitialized () |
Reset the initialized flag, and clear the bmodules_ and cmodule_. More... | |
void | update_modules (CollapseInfo &_ci) |
bool | is_collapse_legal (const CollapseInfo &_ci) |
float | collapse_priority (const CollapseInfo &_ci) |
Calculate priority of an halfedge collapse (using the modules) More... | |
void | preprocess_collapse (CollapseInfo &_ci) |
Pre-process a collapse. More... | |
void | postprocess_collapse (CollapseInfo &_ci) |
Post-process a collapse. More... | |
void | set_error_tolerance_factor (double _factor) |
void | reset () |
Multiple choice decimater framework
Definition at line 77 of file McDecimaterT.hh.
typedef CollapseInfoT<MeshT> OpenMesh::Decimater::McDecimaterT< MeshT >::CollapseInfo |
Definition at line 83 of file McDecimaterT.hh.
typedef MeshT OpenMesh::Decimater::McDecimaterT< MeshT >::Mesh |
Definition at line 82 of file McDecimaterT.hh.
typedef ModBaseT<MeshT> OpenMesh::Decimater::McDecimaterT< MeshT >::Module |
Definition at line 84 of file McDecimaterT.hh.
typedef std::vector< Module* > OpenMesh::Decimater::McDecimaterT< MeshT >::ModuleList |
Definition at line 85 of file McDecimaterT.hh.
typedef ModuleList::iterator OpenMesh::Decimater::McDecimaterT< MeshT >::ModuleListIterator |
Definition at line 86 of file McDecimaterT.hh.
typedef McDecimaterT< MeshT > OpenMesh::Decimater::McDecimaterT< MeshT >::Self |
Definition at line 81 of file McDecimaterT.hh.
OpenMesh::Decimater::McDecimaterT< Mesh >::McDecimaterT | ( | Mesh & | _mesh | ) |
Constructor.
Definition at line 76 of file McDecimaterT_impl.hh.
OpenMesh::Decimater::McDecimaterT< Mesh >::~McDecimaterT |
Destructor.
Definition at line 91 of file McDecimaterT_impl.hh.
size_t OpenMesh::Decimater::McDecimaterT< Mesh >::decimate | ( | size_t | _n_collapses, |
bool | _only_selected = false |
||
) |
Decimate (perform _n_collapses collapses). Return number of performed collapses. If _n_collapses is not given reduce as much as possible.
_n_collapses | Desired number of collapses. If zero (default), attempt to do as many collapses as possible. |
_only_selected | Only consider vertices which are selected for decimation |
Definition at line 102 of file McDecimaterT_impl.hh.
size_t OpenMesh::Decimater::McDecimaterT< Mesh >::decimate_constraints_only | ( | float | _factor, |
bool | _only_selected = false |
||
) |
Decimate only with constraints, while _factor gives the percentage of the constraints that should be used
Definition at line 369 of file McDecimaterT_impl.hh.
|
inline |
Decimate the mesh to a desired target vertex complexity.
_n_vertices | Target complexity, i.e. desired number of remaining vertices after decimation. |
_only_selected | Only consider vertices which are selected for decimation |
Definition at line 122 of file McDecimaterT.hh.
size_t OpenMesh::Decimater::McDecimaterT< Mesh >::decimate_to_faces | ( | size_t | _n_vertices = 0 , |
size_t | _n_faces = 0 , |
||
bool | _only_selected = false |
||
) |
Attempts to decimate the mesh until a desired vertex or face complexity is achieved.
_n_vertices | Target vertex complexity. |
_n_faces | Target face complexity. |
_only_selected | Only consider vertices which are selected for decimation |
Definition at line 226 of file McDecimaterT_impl.hh.
|
inline |
Definition at line 149 of file McDecimaterT.hh.
|
inline |
Definition at line 150 of file McDecimaterT.hh.
|
private |
Definition at line 156 of file McDecimaterT.hh.
|
private |
Definition at line 158 of file McDecimaterT.hh.