Developer Documentation
|
#include <OpenFlipper/libs_required/OpenMesh/src/OpenMesh/Tools/Decimater/ModProgMeshT.hh>
Classes | |
struct | Info |
Public Types | |
typedef std::vector< Info > | InfoList |
Type of the list storing the progressive mesh info Info. | |
Public Types inherited from OpenMesh::Decimater::ModBaseT< MeshT > | |
enum | { ILLEGAL_COLLAPSE = -1, LEGAL_COLLAPSE = 0 } |
typedef MeshT | Mesh |
typedef CollapseInfoT< MeshT > | CollapseInfo |
Public Member Functions | |
DECIMATING_MODULE (ModProgMeshT, MeshT, ProgMesh) | |
ModProgMeshT (MeshT &_mesh) | |
Constructor. | |
~ModProgMeshT () | |
Destructor. | |
const InfoList & | pmi () const |
void | postprocess_collapse (const CollapseInfo &_ci) |
bool | is_binary (void) const |
bool | write (const std::string &_ofname) |
const InfoList & | infolist () const |
Reference to collected information. | |
Public Member Functions inherited from OpenMesh::Decimater::ModBaseT< MeshT > | |
virtual | ~ModBaseT () |
Virtual desctructor. | |
DECIMATER_MODNAME (ModBase) | |
Set module's name (using DECIMATER_MODNAME macro) | |
bool | is_binary (void) const |
Returns true if criteria returns a binary value. | |
void | set_binary (bool _b) |
Set whether module is binary or not. | |
virtual void | initialize () |
Initialize module-internal stuff. | |
virtual float | collapse_priority (const CollapseInfoT< MeshT > &) |
virtual void | preprocess_collapse (const CollapseInfoT< MeshT > &) |
virtual void | set_error_tolerance_factor (double _factor) |
Private Member Functions | |
void | set_binary (bool _b) |
Private Attributes | |
InfoList | pmi_ |
VPropHandleT< size_t > | idx_ |
Additional Inherited Members | |
Protected Member Functions inherited from OpenMesh::Decimater::ModBaseT< MeshT > | |
ModBaseT (MeshT &_mesh, bool _is_binary) | |
MeshT & | mesh () |
Access the mesh associated with the decimater. | |
Protected Attributes inherited from OpenMesh::Decimater::ModBaseT< MeshT > | |
double | error_tolerance_factor_ |
Collect progressive mesh information while decimating.
The progressive mesh data is stored in an internal structure, which can be evaluated after the decimation process and (!) before calling the garbage collection of the decimated mesh.
Definition at line 80 of file ModProgMeshT.hh.
|
inlinevirtual |
Stores collapse information in a queue.
Reimplemented from OpenMesh::Decimater::ModBaseT< MeshT >.
Definition at line 133 of file ModProgMeshT.hh.
bool OpenMesh::Decimater::ModProgMeshT< MeshT >::write | ( | const std::string & | _ofname | ) |
Write progressive mesh data to a file in proprietary binary format .pm.
The methods uses the collected data to write a progressive mesh file. It's a binary format with little endian byte ordering:
NV
in the base mesh.
[x,y,z][x,y,z]...
[v0,v1,v2][v0,v1,v2]...v0
, and 3 32-bit int indices for v1
, vl
, and vr
. The index for vl
or vr
might be -1, if the face on this side of the edge does not exists._ofname | Name of the file, where to write the progressive mesh |
true
on success of the operation, else false
. Definition at line 82 of file ModProgMeshT_impl.hh.