OpenLexocad  27.1
CurveBoundedPlane.h
Go to the documentation of this file.
1 #pragma once
2 
5 #include <OpenLxApp/Plane.h>
6 
7 #include <memory>
8 #include <vector>
9 
10 
11 
12 FORWARD_DECL(Part, CurveBoundedSurface)
13 
14 namespace OpenLxApp
15 {
28 class LX_OPENLXAPP_EXPORT CurveBoundedPlane : public BoundedSurface
29 {
30  PROXY_HEADER(CurveBoundedPlane, Part::CurveBoundedSurface, IFCCURVEBOUNDEDPLANE)
31 
32 public:
33  ~CurveBoundedPlane(void);
34 
35  void setBasisSurface(std::shared_ptr<Plane> surface);
36  void setOuterBoundary(std::shared_ptr<BoundedCurve> outerBound);
37  void setInnerBoundaries(const std::vector<std::shared_ptr<BoundedCurve>>& innerBounds);
38 
39  std::shared_ptr<ElementarySurface> getBasisSurface() const;
40  std::shared_ptr<BoundedCurve> getOuterBoundary() const;
41  std::vector<std::shared_ptr<BoundedCurve>> getInnerBoundaries() const;
42 
43 
44 private:
45  CurveBoundedPlane(void) {}
46 };
47 } // namespace OpenLxApp
#define PROXY_HEADER(_openlexocadclass_, _corelexocadclass_, _type_)
Definition: Globals.h:146
A bounded surface is a surface of finite area with identifiable boundaries. (Definition from ISO/CD 1...
Definition: BoundedSurface.h:21
Definition: ActiveScript.h:7
#define FORWARD_DECL(x, y)
Definition: Globals.h:93
The curve bounded surface is a parametric surface with curved boundaries defined by one or more bound...
Definition: CurveBoundedPlane.h:28