Geom Software - C++ Programming and Geometry Libraries
WOF Documentation pages v1.08
WofMesh.h
1 // Copyright (C) Geom Software e.U, Bernhard Kornberger, Graz/Austria
2 //
3 // This file is part of the WOF software. WOF is commercial software.
4 // Users holding a license may use this file in accordance with the
5 // License Agreement.
6 //
7 // This software is provided AS IS with NO WARRANTY OF ANY KIND,
8 // INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS
9 // FOR A PARTICULAR PURPOSE.
10 //
11 // Please contact the author if any conditions of this licensing are
12 // not clear to you.
13 //
14 // Author: Bernhard Kornberger, bkorn (at) geom.at
15 // http://www.geom.at
16 
17 #pragma once
18 
19 #include <vector>
20 #include <memory>
21 #include "Point3.h"
22 
23 namespace GEOM_WOF {
24 
25 struct Dat; // FWD
26 class WofMesh; // FWD
27 typedef std::shared_ptr<WofMesh> WMeshPtr;
28 
33 class CLASS_DECLSPEC WofMesh
34 {
35 public:
38  explicit WofMesh(Dat* pDat_);
48  void getTriangles(std::vector<Point3*>& vTriangleCorners) const;
53  void getPoints(std::vector<Point3*>& vPoints) const;
66  void getVertexIndexData(std::vector<Point3*>& vVertices,
67  std::vector<int>& vCornerIndices) const;
68 
75  bool writePly_BIN(const std::string& name) const;
82  bool writePly_ASCII(const std::string& name) const;
89  bool writeGeomview_ASCII(const std::string& name) const;
97  bool writeStl_ASCII(const std::string& name) const;
104  void printStatistics(const std::string& name) const;
105 private:
106  WofMesh(WofMesh&);
107  Dat* pDat;
108 };
109 
110 
111 
112 } // NAMESPACE
113 
114 
3D Mesh class
Definition: WofMesh.h:34
void getTriangles(std::vector< Point3 * > &vTriangleCorners) const
Get Triangles.
bool writePly_ASCII(const std::string &name) const
Write Ply (ASCII)
~WofMesh()
Destructor.
bool writeStl_ASCII(const std::string &name) const
Write STL (ASCII)
bool writeGeomview_ASCII(const std::string &name) const
Write Geomview.
void getPoints(std::vector< Point3 * > &vPoints) const
Get Points.
bool writePly_BIN(const std::string &name) const
Write Ply (Binary)
WofMesh(Dat *pDat_)
Constructor.
void printStatistics(const std::string &name) const
Print Statistics.
void getVertexIndexData(std::vector< Point3 * > &vVertices, std::vector< int > &vCornerIndices) const
Get the Mesh as Vertices and Indices.
Definition: Point3.h:23