OpenMesh.Tools.Decimater.ModProgMeshT
$(DDOC_MODULE_MEMBERS
class
ModProgMeshT
(DecimaterType): ModBaseT!(DecimaterType);
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.
- struct
Info
;
- Struct storing progressive mesh information
See Also:
CollapseInfoT, ModProgMeshT
- Info
opCall
(ref CollapseInfo _ci);
- Initializing constructor copies appropriate handles from
collapse information \c ci.
- Mesh.VertexHandle
v0
;
- < See CollapseInfoT.
v0
- Mesh.VertexHandle
v1
;
- < See CollapseInfoT.
v1
- Mesh.VertexHandle
vl
;
- < See CollapseInfoT.
vl
- Mesh.VertexHandle
vr
;
- < See CollapseInfoT.
vr
- alias
InfoList
;
- Type of the list storing the progressive mesh info Info.
- this(DecimaterType _dec);
- Constructor
- void
postprocess_collapse
(ref CollapseInfo _ci);
- Stores collapse information in a queue.
See Also:
infolist()
- bool
write
(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:
- The first 8 bytes contain the word "ProgMesh".
- 32-bit int for the number of vertices \c NV in the base mesh.
- 32-bit int for the number of faces in the base mesh.
- 32-bit int for the number of halfedge collapses (now vertex splits)
- Positions of vertices of the base mesh (32-bit float triplets).
\c [x,y,z][x,y,z]...
- Triplets of indices (32-bit int) for each triangle (index in the
list of vertices of the base mesh defined by the positions.
\c [v0,v1,v2][v0,v1,v2]...
- For each collapse/split a detail information package made of
3 32-bit floats for the positions of vertex \c v0, and 3 32-bit
int indices for \c v1, \c vl, and \c vr.
The index for \c vl or \c vr might be -1, if the face on this side
of the edge does not exists.
\remark Write file before calling the garbage collection of the mesh.
\param ofname Name of the file, where to
write
the progressive mesh
\return \c true on success of the operation, else \c false.
)
- InfoList
infolist
();
- Reference to collected information
|