IFC (IFC4X3_ADD2) under development IfcCartesianTransformationOperator2D

RV ⓘ
AbV ⓘ Semantic definition

An IfcCartesianTransformationOperator2D defines a geometric transformation in two-dimensional space. Entity inheritance 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.

IfcCartesianTransformationOperator (6)
1 Axis1 OPTIONAL IfcDirection

The direction used to determine U[1], the derived X axis direction.

2 Axis2 OPTIONAL IfcDirection

The direction used to determine U[2], the derived Y axis direction.

3 LocalOrigin IfcCartesianPoint

The required translation, specified as a cartesian point. The actual translation included in the transformation is from the geometric origin to the local origin.

4 Scale OPTIONAL IfcReal

The scaling value specified for the transformation.

* Scl IfcReal

This attribute is formally derived.

NVL(Scale, 1.0)

The derived scale S of the transformation, equal to scale if that exists, or 1.0 otherwise.

* Dim IfcDimensionCount

This attribute is formally derived.


The space dimensionality of this class, determined by the space dimensionality of the local origin.

Click to show 8 hidden inherited attributes Click to hide 8 inherited attributes
IfcCartesianTransformationOperator2D (1)
* U LIST [2:2] OF IfcDirection

This attribute is formally derived.


The list of mutually orthogonal, normalized vectors defining the transformation matrix T. They are derived from the explicit attributes Axis1 and Axis2 in that order.

Table Formal propositions

Name Description

The inherited Axis1 should have (if given) the dimensionality of 2.

NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis1)) OR 
(SELF\IfcCartesianTransformationOperator.Axis1.Dim = 2)

The inherited Axis2 should have (if given) the dimensionality of 2.

NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis2)) OR 
(SELF\IfcCartesianTransformationOperator.Axis2.Dim = 2)

The coordinate space dimensionality of this entity shall be 2.

SELF\IfcCartesianTransformationOperator.Dim = 2
Table Examples Formal representation

ENTITY IfcCartesianTransformationOperator2D
 SUBTYPE OF (IfcCartesianTransformationOperator);
	 U : LIST [2:2] OF IfcDirection := IfcBaseAxis(2,SELF\IfcCartesianTransformationOperator.Axis1,
	Axis1Is2D : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis1)) OR 
(SELF\IfcCartesianTransformationOperator.Axis1.Dim = 2);
	Axis2Is2D : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis2)) OR 
(SELF\IfcCartesianTransformationOperator.Axis2.Dim = 2);
	DimEqual2 : SELF\IfcCartesianTransformationOperator.Dim = 2;

Edit on Github

Is this page difficult to understand? Let us know! Changelog IFC4

  • where rule, Axis1Is2D
  • where rule, Axis2Is2D
  • where rule, DimEqual2
  • where rule, WR1
  • where rule, WR2
  • where rule, WR3