OpenLexocad  28.0
Block.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <Core/PropertyAxis2.h>
4 #include <Geom/Ax2.h>
5 #include <OpenLxApp/Geometry.h>
6 
7 
8 FORWARD_DECL(Part, Box)
9 
10 namespace OpenLxApp
11 {
26 class LX_OPENLXAPP_EXPORT Block : public Geometry
27 {
28  PROXY_HEADER(Block, Part::Box, IFCBLOCK)
29 
30  DECL_PROPERTY(Block, XLength, double)
31  DECL_PROPERTY(Block, YLength, double)
32  DECL_PROPERTY(Block, ZLength, double)
33  DECL_PROPERTY(Block, Position, Geom::Ax2)
34 
35  // Deprecated:
36  DECL_PROPERTY(Block, Length, double) // Deprecated. Use XLength instead.
37  DECL_PROPERTY(Block, Width, double) // Deprecated. Use YLength instead.
38  DECL_PROPERTY(Block, Height, double) // Deprecated. Use ZLength instead.
39 
40 
41 
42 public:
43  ~Block();
44 
45 private:
46  Block() {}
47 };
48 
49 } // namespace OpenLxApp
OpenLxApp
Definition: ActiveScript.h:10
FORWARD_DECL
#define FORWARD_DECL(x, y)
Definition: Globals.h:93
Geom::RTree::Box
bg::model::box< Point > Box
Definition: RTree.h:22
PropertyAxis2.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::Geometry
Super-class of all Geometries (aka GeometricRepresentationItems)
Definition: Geometry.h:24
OpenLxApp::Block
A box is a solid rectangular parallelepiped, defined with a location and placement coordinate system....
Definition: Block.h:27
Ax2.h
Geometry.h
PROXY_HEADER
#define PROXY_HEADER(_openlexocadclass_, _corelexocadclass_, _type_)
Definition: Globals.h:146
Geom
Definition: PropertyContainer.h:33