OpenLexocad  27.1
PolygonMesh.h
Go to the documentation of this file.
1 
2 #include <Geom/Pnt.h>
3 #include <OpenLxApp/Geometry.h>
4 #include <Topo/Shape.h>
5 
6 #include <vector>
7 
8 FORWARD_DECL(Mesh, PolygonMesh)
9 
10 namespace OpenLxApp
11 {
18 class LX_OPENLXAPP_EXPORT PolygonMesh : public Geometry
19 {
20  PROXY_HEADER(PolygonMesh, Mesh::PolygonMesh, IFCPOLYGONMESH)
21 
22  DECL_PROPERTY(PolygonMesh, Polygons, std::vector<int>)
23  DECL_PROPERTY(PolygonMesh, Points, std::vector<Geom::Pnt>)
24 public:
25  ~PolygonMesh(void);
26  void setMesh(pMesh aMesh);
27  pConstMesh getMesh() const;
28 
29 private:
30  PolygonMesh(void) {}
31 };
32 } // namespace OpenLxApp
A Polygon Mesh from triangles and quadrangles.
Definition: PolygonMesh.h:18
#define PROXY_HEADER(_openlexocadclass_, _corelexocadclass_, _type_)
Definition: Globals.h:146
Super-class of all Geometries (aka GeometricRepresentationItems)
Definition: Geometry.h:23
Definition: ActiveScript.h:7
std::shared_ptr< Topo::MeshShape > pMesh
Definition: Shape.h:77
#define DECL_PROPERTY(_class_, _name_, _type_)
DECL_PROPERTY and DEFINE_PROPERTY are macros used for mapping between the properties of Lexocad objec...
Definition: Globals.h:242
std::shared_ptr< Topo::MeshShape const > pConstMesh
Definition: Shape.h:92
#define FORWARD_DECL(x, y)
Definition: Globals.h:93