32 #ifndef ISOEX_MARCHINGCUBEST_HH
33 #define ISOEX_MARCHINGCUBEST_HH
37 #include <OpenMesh/Core/Mesh/TriMesh_ArrayKernelT.hh>
39 #include "Edge2VertexMapT.hh"
42 #include "../Grids/Grid.hh"
61 template <
class Mesh,
class Gr
id>
66 MarchingCubesT(
const Grid& _grid, Mesh& _mesh,
float _iso = 0.0,
const std::string &_vprop_v2edge =
"");
74 typedef typename Mesh::Point Point;
75 typedef typename Mesh::VertexHandle VertexHandle;
76 typedef typename Mesh::FaceHandle FaceHandle;
80 void process_cube(CubeIdx _idx);
81 VertexHandle add_vertex(PointIdx _p0, PointIdx _p1);
87 OpenMesh::VPropHandleT< EdgeKey<PointIdx> > vprop_v2edge_;
88 bool use_prop_v2edge_;
103 template <
class Mesh,
class Gr
id>
113 #if defined(INCLUDE_TEMPLATES) && !defined(ISOEX_MARCHINGCUBEST_C)
114 #define ISOEX_MARCHINGCUBEST_TEMPLATES
115 #include "MarchingCubesT.cc"
118 #endif // ISOEX_MARCHINGCUBEST_HH defined
unsigned int PointIdx
The grid points can be referred to by PointIdx.
Definition: Grid.hh:72
Definition: Edge2VertexMapT.hh:58
A type for volume images, or 3D textures.
Definition: MarchingCubesT.hh:62
unsigned int CubeIdx
CubeIdx can be used to refer to cubes.
Definition: Grid.hh:69