IFC 4.3.x development

8.9.3.2 IfcAxis2Placement2D

Change log

IFC4

additionswhere_rulesLocationIs2D
additionswhere_rulesRefDirIs2D
deletionswhere_rulesWR1
deletionswhere_rulesWR2

IFC4X3_RC3

additionswhere_rulesLocationIsCP

8.9.3.2.1 Semantic definitions at the entity

The IfcAxis2Placement2D provides location and orientation to place items in a two-dimensional space. The attribute RefDirection defines the x axis, the y axis is derived. If the attribute RefDirection is not given, the placement defaults to P[1] (x-axis) as [1.,0.] and P[2] (y-axis) as [0.,1.].

axis2 placement 2D
Figure 1 illustrates the definition of the IfcAxis2Placement2D within the two-dimensional coordinate system.

Figure 1 — Axis2 placement 2D

 

NOTE  Definition according to ISO/CD 10303-42:1992
The location and orientation in two dimensional space of two mutually perpendicular axes. An axis2_placement_2d is defined in terms of a point, (inherited from the placement supertype), and an axis. It can be used to locate and originate an object in two dimensional space and to define a placement coordinate system. The entity includes a point which forms the origin of the placement coordinate system. A direction vector is required to complete the definition of the placement coordinate system. The reference direction defines the placement X axis direction, the placement Y axis is derived from this.

NOTE  Entity adapted from axis2_placement_2d defined in ISO 10303-42.

HISTORY  New entity in IFC1.5.

8.9.3.2.1 Attributes

# Attribute Type Description
IfcRepresentationItem
LayerAssignmentSET [0:1] OF IfcPresentationLayerAssignment FOR AssignedItemsAssignment 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.
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.



> IFC2x3 CHANGE  The inverse attribute StyledByItem has been added.
IfcGeometricRepresentationItem
IfcPlacement
1 Location IfcPoint The geometric position of a reference point, such as the center of a circle, of the item to be located.
Dim INVALID The space dimensionality of this class, derived from the dimensionality of the location.
IfcAxis2Placement2D
2 RefDirection OPTIONAL IfcDirection The direction used to determine the direction of the local X axis. If a value is omited that it defaults to [1.0, 0.0.].
P INVALID _P[1]_: The normalized direction of the placement X Axis. This is [1.0,0.0] if RefDirection is omitted.

_P[2]_: The normalized direction of the placement Y Axis. This is a derived attribute and is orthogonal to P[1]. If RefDirection is omitted, it defaults to [0.0,1.0]

8.9.3.2.2 Entity inheritance

dot_inheritance IfcAxis2Placement2D IfcAxis2Placement2D IfcPlacement IfcPlacement IfcAxis2Placement2D->IfcPlacement IfcPlacement_children 3 more... IfcPlacement_children->IfcPlacement IfcGeometricRepresentationItem IfcGeometricRepresentationItem IfcPlacement->IfcGeometricRepresentationItem IfcGeometricRepresentationItem_children 24 more... IfcGeometricRepresentationItem_children->IfcGeometricRepresentationItem IfcRepresentationItem IfcRepresentationItem IfcGeometricRepresentationItem->IfcRepresentationItem IfcRepresentationItem_children 3 more... IfcRepresentationItem_children->IfcRepresentationItem

8.9.3.2.3 Formal representations

ENTITY IfcAxis2Placement2D
 SUBTYPE OF (IfcPlacement);
	RefDirection : OPTIONAL IfcDirection;
 DERIVE
	 P : LIST [2:2] OF IfcDirection := IfcBuild2Axes(RefDirection);
 WHERE
	RefDirIs2D : (NOT (EXISTS (RefDirection))) OR (RefDirection.Dim = 2);
	LocationIs2D : SELF\IfcPlacement.Location.Dim = 2;
	LocationIsCP : 'IFC4X3_DEV_a1492713.IFCCARTESIANPOINT' IN TYPEOF(SELF\IfcPlacement.Location);
END_ENTITY;