52 #ifndef __BASEEXPORTER_HH__ 53 #define __BASEEXPORTER_HH__ 63 #include <OpenMesh/Core/System/config.h> 64 #include <OpenMesh/Core/Geometry/VectorT.hh> 65 #include <OpenMesh/Core/Mesh/BaseKernel.hh> 108 std::vector<VertexHandle>& _vhandles)
const=0;
119 get_face_texcoords(std::vector<Vec2f>& _hehandles)
const = 0;
140 virtual int get_halfedge_id(
FaceHandle _vh) = 0;
147 virtual const BaseKernel* kernel() {
return 0; }
151 virtual size_t n_vertices()
const = 0;
152 virtual size_t n_faces()
const = 0;
153 virtual size_t n_edges()
const = 0;
157 virtual bool is_triangle_mesh()
const {
return false; }
158 virtual bool has_vertex_normals()
const {
return false; }
159 virtual bool has_vertex_colors()
const {
return false; }
160 virtual bool has_vertex_status()
const {
return false; }
161 virtual bool has_vertex_texcoords()
const {
return false; }
162 virtual bool has_edge_colors()
const {
return false; }
163 virtual bool has_edge_status()
const {
return false; }
164 virtual bool has_halfedge_status()
const {
return false; }
165 virtual bool has_face_normals()
const {
return false; }
166 virtual bool has_face_colors()
const {
return false; }
167 virtual bool has_face_status()
const {
return false; }
Handle for a halfedge entity.
Definition: Handles.hh:127
This class provides low-level property management like adding/removing properties and access to prope...
Definition: BaseKernel.hh:97
Add status information to a base class.
Definition: Status.hh:94
Handle for a vertex entity.
Definition: Handles.hh:120
Handle for a edge entity.
Definition: Handles.hh:134
Base class for exporter modules.
Definition: BaseExporter.hh:84
Contains all the mesh ingredients like the polygonal mesh, the triangle mesh, different mesh kernels ...
Definition: MeshItems.hh:59
Handle for a face entity.
Definition: Handles.hh:141