OpenLexocad  27.1
CompositeCurve.h
Go to the documentation of this file.
1 #pragma once
2 
5 
6 #include <vector>
7 
8 
9 
10 FORWARD_DECL(Part, CompositeCurve)
11 
12 namespace OpenLxApp
13 {
24 class LX_OPENLXAPP_EXPORT CompositeCurve : public BoundedCurve
25 {
26  PROXY_HEADER(CompositeCurve, Part::CompositeCurve, IFCCOMPOSITECURVE)
27 
28  DECL_PROPERTY(CompositeCurve, Allow3dCurve, bool)
29 
30 public:
31  ~CompositeCurve(void);
32 
33  void addSegment(std::shared_ptr<CompositeCurveSegment> segment);
34  std::vector<std::shared_ptr<CompositeCurveSegment>> getSegments() const;
35 
36 private:
37  CompositeCurve(void) {}
38 };
39 } // namespace OpenLxApp
A composite curve (IfcCompositeCurve) is a collection of curves joined end-to-end....
Definition: CompositeCurve.h:24
#define PROXY_HEADER(_openlexocadclass_, _corelexocadclass_, _type_)
Definition: Globals.h:146
Definition: ActiveScript.h:7
A bounded curve is a curve of finite arc length with identifiable end points. (Definition from ISO/CD...
Definition: BoundedCurve.h:19
#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
#define FORWARD_DECL(x, y)
Definition: Globals.h:93