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.
|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.|
> 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.
|1||Axis1||OPTIONAL IfcDirection||The direction used to determine U, the derived X axis direction.|
|2||Axis2||OPTIONAL IfcDirection||The direction used to determine U, 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||INVALID||The derived scale S of the transformation, equal to scale if that exists, or 1.0 otherwise.|
|Dim||INVALID||The space dimensionality of this class, determined by the space dimensionality of the local origin.|
|5||Axis3||OPTIONAL IfcDirection||The exact direction of U, the derived Z axis direction.|
|U||INVALID||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.|
ENTITY IfcCartesianTransformationOperator3D SUPERTYPE OF (ONEOF (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;