8.9.3.3 IfcAxis2Placement3D
8.9.3.3.1 Semantic definition
The IfcAxis2Placement3D provides location and orientations to place items in a three-dimensional space. The attribute Axis defines the Z direction, RefDirection the X direction. The Y direction is derived.
If the attribute values for Axis and RefDirection are not given, the placement defaults to P[1] (x-axis) as [1.,0.,0.], P[2] (y-axis) as [0.,1.,0.] and P[3] (z-axis) as [0.,0.,1.].
Figure 8.9.3.3.A illustrates the definition of the IfcAxis2Placement3D within the three-dimensional coordinate system.
8.9.3.3.2 Entity inheritance
-
- IfcPlacement
- IfcAnnotationFillArea
- IfcBooleanResult
- IfcBoundingBox
- IfcCartesianPointList
- IfcCartesianTransformationOperator
- IfcCsgPrimitive3D
- IfcCurve
- IfcDirection
- IfcFaceBasedSurfaceModel
- IfcFillAreaStyleHatching
- IfcFillAreaStyleTiles
- IfcGeometricSet
- IfcHalfSpaceSolid
- IfcLightSource
- IfcPlanarExtent
- IfcPoint
- IfcSectionedSpine
- IfcSegment
- IfcShellBasedSurfaceModel
- IfcSolidModel
- IfcSurface
- IfcTessellatedItem
- IfcTextLiteral
- IfcVector
8.9.3.3.3 Attributes
# | Attribute | Type | Description |
---|---|---|---|
IfcRepresentationItem (2) | |||
LayerAssignment | SET [0:1] OF IfcPresentationLayerAssignment FOR AssignedItems |
Assignment of the representation item to a single or multiple layer(s). The LayerAssignments can override a LayerAssignments of the IfcRepresentation it is used within the list of Items. |
|
StyledByItem | SET [0:1] OF IfcStyledItem FOR Item |
Reference to the IfcStyledItem that provides presentation information to the representation, e.g. a curve style, including colour and thickness to a geometric curve. |
|
IfcPlacement (2) | |||
1 | Location | IfcPoint |
The geometric position of a reference point, such as the center of a circle, of the item to be located. |
* | Dim | IfcDimensionCount |
This attribute is formally derived.
The space dimensionality of this class, derived from the dimensionality of the location. |
Click to show 4 hidden inherited attributes Click to hide 4 inherited attributes | |||
IfcAxis2Placement3D (3) | |||
2 | Axis | OPTIONAL IfcDirection |
The exact direction of the local Z Axis. |
3 | RefDirection | OPTIONAL IfcDirection |
The direction used to determine the direction of the local X Axis. If necessary an adjustment is made to maintain orthogonality to the Axis direction. If Axis and/or RefDirection is omitted, these directions are taken from the geometric coordinate system. |
* | P | LIST [3:3] OF IfcDirection |
This attribute is formally derived.
The normalized directions of the placement X Axis (P[1]) and the placement Y Axis (P[2]) and the placement Z Axis (P[3]). |
8.9.3.3.4 Formal propositions
Name | Description |
---|---|
AxisAndRefDirProvision |
Either both, Axis and RefDirection are not given and therefore defaulted, or both shall be given. |
|
|
AxisIs3D |
The Axis when given should only reference a three-dimensional IfcDirection. |
|
|
AxisToRefDirPosition |
The Axis and RefDirection shall not be parallel or anti-parallel. |
|
|
LocationIs3D |
The dimensionality of the placement location shall be 3. |
|
|
LocationIsCP |
No description available. |
|
|
RefDirIs3D |
The RefDirection when given should only reference a three-dimensional IfcDirection. |
|
8.9.3.3.5 Formal representation
ENTITY IfcAxis2Placement3D
SUBTYPE OF (IfcPlacement);
Axis : OPTIONAL IfcDirection;
RefDirection : OPTIONAL IfcDirection;
DERIVE
P : LIST [3:3] OF IfcDirection := IfcBuildAxes(Axis, RefDirection);
WHERE
AxisAndRefDirProvision : NOT ((EXISTS (Axis)) XOR (EXISTS (RefDirection)));
AxisIs3D : (NOT (EXISTS (Axis))) OR (Axis.Dim = 3);
AxisToRefDirPosition : (NOT (EXISTS (Axis))) OR (NOT (EXISTS (RefDirection))) OR (IfcCrossProduct(Axis,RefDirection).Magnitude > 0.0);
LocationIs3D : SELF\IfcPlacement.Location.Dim = 3;
LocationIsCP : 'IFC4X3_DEV_20bdb3d.IFCCARTESIANPOINT' IN TYPEOF(SELF\IfcPlacement.Location);
RefDirIs3D : (NOT (EXISTS (RefDirection))) OR (RefDirection.Dim = 3);
END_ENTITY;