OpenLexocad  28.0
IShapeProfileDef.h
Go to the documentation of this file.
1 #pragma once
2 
4 
5 
6 
7 FORWARD_DECL(Part, IShapeProfileDef)
8 
9 namespace OpenLxApp
10 {
25 class LX_OPENLXAPP_EXPORT IShapeProfileDef : public ParameterizedProfileDef
26 {
27  PROXY_HEADER(IShapeProfileDef, Part::IShapeProfileDef, IFCISHAPEPROFILEDEF)
28 
29  DECL_PROPERTY(IShapeProfileDef, OverallWidth, double)
30  DECL_PROPERTY(IShapeProfileDef, OverallDepth, double)
31  DECL_PROPERTY(IShapeProfileDef, WebThickness, double)
32  DECL_PROPERTY(IShapeProfileDef, FlangeThickness, double)
33  DECL_PROPERTY(IShapeProfileDef, FilletRadius, double)
34  // DECL_PROPERTY(IShapeProfileDef, FlangeEdgeRadius, double)
35  // DECL_PROPERTY(IShapeProfileDef, FlangeSlope, double)
36 
37 public:
38  static std::vector<Base::String> getPredefinedSteelProfileTypes();
39  static std::vector<Base::String> getPredefinedSteelProfiles(const Base::String& aTypeName);
40 
41  bool setValuesFromPredefinedSteelProfile(const Base::String& aProfileName);
42  virtual ~IShapeProfileDef(void);
43 
44 protected:
46 };
47 } // namespace OpenLxApp
OpenLxApp
Definition: ActiveScript.h:10
FORWARD_DECL
#define FORWARD_DECL(x, y)
Definition: Globals.h:93
ParameterizedProfileDef.h
DECL_PROPERTY
#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
OpenLxApp::IShapeProfileDef
IShapeProfileDef defines a section profile that provides the defining parameters of an 'I' or 'H' sec...
Definition: IShapeProfileDef.h:26
std
Definition: GlobalId.h:64
OpenLxApp::ParameterizedProfileDef
The parameterized profile definition defines a 2D position coordinate system to which the parameters ...
Definition: ParameterizedProfileDef.h:26
PROXY_HEADER
#define PROXY_HEADER(_openlexocadclass_, _corelexocadclass_, _type_)
Definition: Globals.h:146
Base
Definition: AbstractXMLReader.h:5