IfcCartesianTransformationOperator3D

BACnet MVD

#### IfcCartesianTransformationOperator3D

Natural language names

| Kartesische Transformation - dreidimensional (3D)
| Cartesian Transformation Operator3 D
| Opérateur 3D de transformation cartésienne

Change log

Item | SPF | XML | Change | Description
--- | --- | --- | --- | ---
IFC4 Addendum 1
IfcCartesianTransformationOperator3D |  |  |  |
Scale |  |  | MODIFIED | Type changed from REAL to IfcReal.

##### Semantic definitions at the entity

Entity definition

An IfcCartesianTransformationOperator defines a geometric transformation in three-dimensional space.

> NOTE Definition according to ISO/CD 10303-42:1992
> A Cartesian transformation operator 3d defines a geometric transformation in three-dimensional space composed of translation, rotation, mirroring and uniform scaling. The list of normalized vectors u defines the columns of an orthogonal matrix T. These vectors are computed from the direction attributes axis1, axis2 and axis3 by the base axis function. If |T|= -1, the transformation includes mirroring.

> NOTE Entity adapted from cartesian_transformation_operator_3d defined in ISO10303-42.

> HISTORY New entity in IFC2x.

Attribute definitions

# | Attribute | Type | Cardinality | Description | B
--- | --- | --- | --- | --- | ---
5 | Axis3 | IfcDirection | ? | The exact direction of U[3], the derived Z axis direction. | X | X
| U :=IfcBaseAxis(3,SELF\IfcCartesianTransformationOperator.Axis1, SELF\IfcCartesianTransformationOperator.Axis2,Axis3) | IfcDirection | L[3:3] | The list of mutually orthogonal, normalized vectors defining the transformation matrix T. They are derived from the explicit attributes Axis3, Axis1, and Axis2 in that order. | X | X

Formal Propositions

Rule | Description
--- | ---
DimIs3D | The coordinate space dimensionality of this entity shall be 3.
Axis1Is3D | The inherited Axis1 should have (if given) the dimensionality of 3.
Axis2Is3D | The inherited Axis2 should have (if given) the dimensionality of 3.
Axis3Is3D | The Axis3 should have (if given) the dimensionality of 3.

##### Inherited definitions from supertypes

Entity inheritance
Attribute inheritance

# | Attribute | Type | Cardinality | Description | B
--- | --- | --- | --- | --- | ---
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

X

IfcGeometricRepresentationItem
IfcCartesianTransformationOperator
1 | Axis1 | IfcDirection | ? | The direction used to determine U[1], the derived X axis direction. | X | X
2 | Axis2 | IfcDirection | ? | The direction used to determine U[2], the derived Y axis direction. | X | X
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. | X | X
4 | Scale | IfcReal | ? | The scaling value specified for the transformation. | X | X
| Scl :=NVL(Scale, 1.0) | IfcReal |  | The derived scale S of the transformation, equal to scale if that exists, or 1.0 otherwise. | X | X
| Dim :=LocalOrigin.Dim | IfcDimensionCount |  | The space dimensionality of this class, determined by the space dimensionality of the local origin. | X | X
IfcCartesianTransformationOperator3D
5 | Axis3 | IfcDirection | ? | The exact direction of U[3], the derived Z axis direction. | X | X
| U :=IfcBaseAxis(3,SELF\IfcCartesianTransformationOperator.Axis1, SELF\IfcCartesianTransformationOperator.Axis2,Axis3) | IfcDirection | L[3:3] | The list of mutually orthogonal, normalized vectors defining the transformation matrix T. They are derived from the explicit attributes Axis3, Axis1, and Axis2 in that order. | X | X

##### Formal representations

XML Specification
`<xs:element name="IfcCartesianTransformationOperator3D" type="ifc:IfcCartesianTransformationOperator3D" substitutionGroup="ifc:IfcCartesianTransformationOperator" nillable="true"/>
<xs:complexType name="IfcCartesianTransformationOperator3D">
<xs:complexContent>
<xs:extension base="ifc:IfcCartesianTransformationOperator">
<xs:sequence>
<xs:element name="Axis3" type="ifc:IfcDirection" nillable="true" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
`
EXPRESS Specification
`ENTITY IfcCartesianTransformationOperator3D
SUPERTYPE OF(IfcCartesianTransformationOperator3DnonUniform)
SUBTYPE OF (IfcCartesianTransformationOperator);
Axis3 : OPTIONAL IfcDirection;
DERIVE
U : LIST [3:3] OF IfcDirection := IfcBaseAxis(3,SELF\IfcCartesianTransformationOperator.Axis1, SELF\IfcCartesianTransformationOperator.Axis2,Axis3);
WHERE
DimIs3D : SELF\IfcCartesianTransformationOperator.Dim = 3;
Axis1Is3D : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis1)) OR
(SELF\IfcCartesianTransformationOperator.Axis1.Dim = 3);
Axis2Is3D : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis2)) OR
(SELF\IfcCartesianTransformationOperator.Axis2.Dim = 3);
Axis3Is3D : NOT(EXISTS(Axis3)) OR (Axis3.Dim = 3);
END_ENTITY;

EXPRESS-G diagram

`

Link to this page