OpenLexocad  27.1
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
IShapeProfileDef defines a section profile that provides the defining parameters of an 'I' or 'H' sec...
Definition: IShapeProfileDef.h:25
#define PROXY_HEADER(_openlexocadclass_, _corelexocadclass_, _type_)
Definition: Globals.h:146
A Utf-16 (windows) or ucs4 (unix) encoded string class.
Definition: String.h:23
The parameterized profile definition defines a 2D position coordinate system to which the parameters ...
Definition: ParameterizedProfileDef.h:25
Definition: ActiveScript.h:7
#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
IShapeProfileDef(void)
Definition: IShapeProfileDef.h:45
#define FORWARD_DECL(x, y)
Definition: Globals.h:93