52 #ifndef __BASEIMPORTER_HH__ 53 #define __BASEIMPORTER_HH__ 63 #include <OpenMesh/Core/System/config.h> 64 #include <OpenMesh/Core/Geometry/VectorT.hh> 65 #include <OpenMesh/Core/Mesh/BaseKernel.hh> 104 typedef std::vector<VertexHandle> VHandles;
105 virtual FaceHandle add_face(
const VHandles& _indices) = 0;
111 virtual void add_face_texcoords(
FaceHandle _fh,
VertexHandle _vh,
const std::vector<Vec2f>& _face_texcoords) = 0;
114 virtual void add_face_texcoords(
FaceHandle _fh,
VertexHandle _vh,
const std::vector<Vec3f>& _face_texcoords) = 0;
117 virtual void set_face_texindex(
FaceHandle _fh,
int _texId ) = 0;
205 virtual void add_texture_information(
int _id , std::string _name ) = 0;
208 virtual BaseKernel* kernel() {
return nullptr; }
210 virtual bool is_triangle_mesh()
const {
return false; }
213 virtual void reserve(
unsigned int ,
218 virtual size_t n_vertices()
const = 0;
219 virtual size_t n_faces()
const = 0;
220 virtual size_t n_edges()
const = 0;
224 virtual void prepare() {}
227 virtual void finish() {}
Handle for a face entity.
Definition: Handles.hh:141
VectorT< float, 3 > Vec3f
3-float vector
Definition: Vector11T.hh:850
Handle for a vertex entity.
Definition: Handles.hh:120
Base class for importer modules.
Definition: BaseImporter.hh:83
Handle for a edge entity.
Definition: Handles.hh:134
Add status information to a base class.
Definition: Status.hh:94
Contains all the mesh ingredients like the polygonal mesh, the triangle mesh, different mesh kernels ...
Definition: MeshItems.hh:59
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