Definition from 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: Corresponding STEP entity : cartesian_transformation_operator_3d, please refer to ISO/IS 10303-42:1994, p. 33 for the final definition of the formal standard.
HISTORY: New entity in IFC Release 2x.
# | Attribute | Type | Cardinality | Description | A |
---|---|---|---|---|---|
5 | Axis3 | - | This attribute is out of scope for this model view definition and shall not be set. | ||
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 |
Rule | Description |
---|---|
WR1 | The coordinate space dimensionality of this entity shall be 3. |
WR2 | The inherited Axis1 should have (if given) the dimensionality of 3. |
WR3 | The inherited Axis2 should have (if given) the dimensionality of 3. |
WR4 | The Axis3 should have (if given) the dimensionality of 3. |
# | Attribute | Type | Cardinality | Description | A |
---|---|---|---|---|---|
IfcRepresentationItem | |||||
IfcGeometricRepresentationItem | |||||
IfcCartesianTransformationOperator | |||||
1 | Axis1 | - | This attribute is out of scope for this model view definition and shall not be set. | ||
2 | Axis2 | - | This attribute is out of scope for this model view definition and shall not be set. | ||
3 | LocalOrigin | IfcCartesianPoint | [1:1] | 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 |
4 | Scale | - | This attribute is out of scope for this model view definition and shall not be set. | ||
Scl :=NVL(Scale, 1.0) | REAL | [1:1] | The derived scale S of the transformation, equal to scale if that exists, or 1.0 otherwise. | X | |
Dim :=LocalOrigin.Dim | IfcDimensionCount | [1:1] | The space dimensionality of this class, determined by the space dimensionality of the local origin. | X | |
IfcCartesianTransformationOperator3D | |||||
5 | Axis3 | - | This attribute is out of scope for this model view definition and shall not be set. | ||
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 |
<xs:element name="IfcCartesianTransformationOperator3D" type="ifc:IfcCartesianTransformationOperator3D" substitutionGroup="ifc:IfcCartesianTransformationOperator" nillable="true"/>
<xs:complexType name="IfcCartesianTransformationOperator3D">
<xs:complexContent>
<xs:extension base="ifc:IfcCartesianTransformationOperator"/>
</xs:complexContent>
</xs:complexType>
ENTITY IfcCartesianTransformationOperator3D
SUBTYPE OF (IfcCartesianTransformationOperator);
Axis3 : OPTIONAL IfcStrippedOptional;
DERIVE
U : LIST [3:3] OF IfcDirection := IfcBaseAxis(3,SELF\IfcCartesianTransformationOperator.Axis1,
SELF\IfcCartesianTransformationOperator.Axis2,Axis3);
WHERE
WR1 : SELF\IfcCartesianTransformationOperator.Dim = 3;
WR2 : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis1)) OR
(SELF\IfcCartesianTransformationOperator.Axis1.Dim = 3);
WR3 : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis2)) OR
(SELF\IfcCartesianTransformationOperator.Axis2.Dim = 3);
WR4 : NOT(EXISTS(Axis3)) OR (Axis3.Dim = 3);
END_ENTITY;