Einfügepunkt mit zwei Achsen - dreidimensionaler Raum (3D) | |
Axis 2 Placement 3D |
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.
NOTE The RefDirection does not have to be orthogonal to Axis.
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 359 illustrates the definition of the IfcAxis2Placement3D within the three-dimensional coordinate system. |
|
Figure 359 — Axis2 placement 3D |
NOTE Definition according to ISO/CD 10303-42:1992
The location and orientation in three dimensional space of three mutually perpendicular axes. An axis2_placement_3D is defined in terms of a point (inherited from placement supertype) and two (ideally orthogonal) axes. It can be used to locate and orientate a non axi-symmetric object in space and to define a placement coordinate system. The entity includes a point which forms the origin of the placement coordinate system. Two direction vectors are required to complete the definition of the placement coordinate system. The axis is the placement Z axis direction and the ref_direction is an approximation to the placement X axis direction.
NOTE Entity adapted from axis2_placement_3d defined in ISO10303-42.
HISTORY New entity in IFC1.5.
# | Attribute | Type | Cardinality | Description | G |
---|---|---|---|---|---|
2 | Axis | IfcDirection | ? | The exact direction of the local Z Axis. | X |
3 | RefDirection | 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. | X |
P :=IfcBuildAxes(Axis, RefDirection) | IfcDirection | L[3:3] | The normalized directions of the placement X Axis (P[1]) and the placement Y Axis (P[2]) and the placement Z Axis (P[3]). | X |
Rule | Description |
---|---|
LocationIs3D | The dimensionality of the placement location shall be 3. |
AxisIs3D | The Axis when given should only reference a three-dimensional IfcDirection. |
RefDirIs3D | The RefDirection when given should only reference a three-dimensional IfcDirection. |
AxisToRefDirPosition | The Axis and RefDirection shall not be parallel or anti-parallel. |
AxisAndRefDirProvision | Either both, Axis and RefDirection are not given and therefore defaulted, or both shall be given. |
# | Attribute | Type | Cardinality | Description | G |
---|---|---|---|---|---|
IfcRepresentationItem | |||||
LayerAssignment | IfcPresentationLayerAssignment @AssignedItems | S[0:1] | 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.
IFC2x3 CHANGE The inverse attribute LayerAssignments has been added. IFC4 CHANGE The inverse attribute LayerAssignment has been restricted to max 1. Upward compatibility for file based exchange is guaranteed. | X | |
StyledByItem | IfcStyledItem @Item | S[0:1] | Reference to the IfcStyledItem that provides presentation information to the representation, e.g. a curve style, including colour and thickness to a geometric curve.
IFC2x3 CHANGE The inverse attribute StyledByItem has been added. | X | |
IfcGeometricRepresentationItem | |||||
IfcPlacement | |||||
1 | Location | IfcCartesianPoint | The geometric position of a reference point, such as the center of a circle, of the item to be located. | X | |
Dim :=Location.Dim | IfcDimensionCount | The space dimensionality of this class, derived from the dimensionality of the location. | X | ||
IfcAxis2Placement3D | |||||
2 | Axis | IfcDirection | ? | The exact direction of the local Z Axis. | X |
3 | RefDirection | 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. | X |
P :=IfcBuildAxes(Axis, RefDirection) | IfcDirection | L[3:3] | The normalized directions of the placement X Axis (P[1]) and the placement Y Axis (P[2]) and the placement Z Axis (P[3]). | X |
<xs:element name="IfcAxis2Placement3D" type="ifc:IfcAxis2Placement3D" substitutionGroup="ifc:IfcPlacement" nillable="true"/>
<xs:complexType name="IfcAxis2Placement3D">
<xs:complexContent>
<xs:extension base="ifc:IfcPlacement">
<xs:sequence>
<xs:element name="Axis" type="ifc:IfcDirection" nillable="true" minOccurs="0"/>
<xs:element name="RefDirection" type="ifc:IfcDirection" nillable="true" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
ENTITY IfcAxis2Placement3D
SUBTYPE OF (IfcPlacement);
Axis : OPTIONAL IfcDirection;
RefDirection : OPTIONAL IfcDirection;
DERIVE
P : LIST [3:3] OF IfcDirection := IfcBuildAxes(Axis, RefDirection);
WHERE
LocationIs3D : SELF\IfcPlacement.Location.Dim = 3;
AxisIs3D : (NOT (EXISTS (Axis))) OR (Axis.Dim = 3);
RefDirIs3D : (NOT (EXISTS (RefDirection))) OR (RefDirection.Dim = 3);
AxisToRefDirPosition : (NOT (EXISTS (Axis))) OR (NOT (EXISTS (RefDirection))) OR (IfcCrossProduct(Axis,RefDirection).Magnitude > 0.0);
AxisAndRefDirProvision : NOT ((EXISTS (Axis)) XOR (EXISTS (RefDirection)));
END_ENTITY;
References: IfcRelConnectsStructuralMember IfcStructuralAnalysisModel IfcStructuralPointConnection IfcLinearPlacement IfcCsgPrimitive3D IfcPolygonalBoundedHalfSpace IfcSectionedSpine IfcSweptAreaSolid IfcElementarySurface IfcSweptSurface IfcAxis2Placement IfcLightSourceGoniometric