1 #ifndef SimTK_SimTKCOMMON_POLYGONAL_MESH_H_
2 #define SimTK_SimTKCOMMON_POLYGONAL_MESH_H_
33 class PolygonalMeshImpl;
38 #ifndef SimTK_SIMTKCOMMON_DEFINING_POLYGONALMESH
39 extern template class PIMPLHandle<PolygonalMesh, PolygonalMeshImpl, true>;
163 int getNumFaces()
const;
165 int getNumVertices()
const;
171 const Vec3& getVertexPosition(
int vertex)
const;
174 int getNumVerticesForFace(
int face)
const;
181 int getFaceVertex(
int face,
int vertex)
const;
187 int addVertex(
const Vec3& position);
227 void loadFile(
const String& pathname);
233 void loadObjFile(
const String& pathname);
240 void loadObjFile(std::istream& file);
246 void loadVtpFile(
const String& pathname);
256 void loadStlFile(
const String& pathname);
259 explicit PolygonalMesh(PolygonalMeshImpl* impl) : HandleBase(impl) {}
260 void initializeHandleIfEmpty();
265 #endif // SimTK_SimTKCOMMON_POLYGONAL_MESH_H_
#define SimTK_SimTKCOMMON_EXPORT
Definition: SimTKcommon/include/SimTKcommon/internal/common.h:202
This is the top-level SimTK namespace into which all SimTK names are placed to avoid collision with o...
Definition: Assembler.h:37
SimTK_Real Real
This is the default compiled-in floating point type for SimTK, either float or double.
Definition: SimTKcommon/include/SimTKcommon/internal/common.h:577
This class provides a description of a mesh made of polygonal faces (not limited to triangles)...
Definition: PolygonalMesh.h:70
SimTK::String is a plug-compatible std::string replacement (plus some additional functionality) inten...
Definition: String.h:62
This is the header which should be included in user programs that would like to make use of all the S...
PolygonalMesh()
Create an empty PolygonalMesh, with no vertices or faces.
Definition: PolygonalMesh.h:74
This header provides declarations of the user-visible portion of the PIMPLHandle template classes tha...