Kartesische Transformation - zweidimensional (2D) | |
Cartesian Transformation Operator 2D | |
Opérateur 2D de transformation cartésienne |
Item | SPF | XML | Change | Description | IFC4 Addendum 1 |
---|---|---|---|---|
IfcCartesianTransformationOperator2D | ||||
Scale | MODIFIED | Type changed from REAL to IfcReal. |
An IfcCartesianTransformationOperator2D defines a geometric transformation in two-dimensional space.
NOTE Definition according to ISO/CD 10303-42:1992
A Cartesian transformation operator 2d defines a geometric transformation in two-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 and axis2 by the base axis function. If |T|= -1, the transformation includes mirroring.
NOTE Entity adapted from cartesian_transformation_operator_2d defined in ISO10303-42.
HISTORY New entity in IFC2x.
# | Attribute | Type | Cardinality | Description | G |
---|---|---|---|---|---|
U :=IfcBaseAxis(2,SELF\IfcCartesianTransformationOperator.Axis1, SELF\IfcCartesianTransformationOperator.Axis2,?) | IfcDirection | L[2:2] | 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. | X |
Rule | Description |
---|---|
DimEqual2 | The coordinate space dimensionality of this entity shall be 2. |
Axis1Is2D | The inherited Axis1 should have (if given) the dimensionality of 2. |
Axis2Is2D | The inherited Axis2 should have (if given) the dimensionality of 2. |
# | Attribute | Type | Cardinality | Description | G |
---|---|---|---|---|---|
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 | |
IfcGeometricRepresentationItem | |||||
IfcCartesianTransformationOperator | |||||
1 | Axis1 | IfcDirection | ? | The direction used to determine U[1], the derived X axis direction. | X |
2 | Axis2 | IfcDirection | ? | The direction used to determine U[2], the derived Y axis direction. | 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 | |
4 | Scale | IfcReal | ? | The scaling value specified for the transformation. | 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 | ||
Dim :=LocalOrigin.Dim | IfcDimensionCount | The space dimensionality of this class, determined by the space dimensionality of the local origin. | X | ||
IfcCartesianTransformationOperator2D | |||||
U :=IfcBaseAxis(2,SELF\IfcCartesianTransformationOperator.Axis1, SELF\IfcCartesianTransformationOperator.Axis2,?) | IfcDirection | L[2:2] | 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. | X |
<xs:element name="IfcCartesianTransformationOperator2D" type="ifc:IfcCartesianTransformationOperator2D" substitutionGroup="ifc:IfcCartesianTransformationOperator" nillable="true"/>
<xs:complexType name="IfcCartesianTransformationOperator2D">
<xs:complexContent>
<xs:extension base="ifc:IfcCartesianTransformationOperator"/>
</xs:complexContent>
</xs:complexType>
ENTITY IfcCartesianTransformationOperator2D
SUPERTYPE OF(IfcCartesianTransformationOperator2DnonUniform)
SUBTYPE OF (IfcCartesianTransformationOperator);
DERIVE
U : LIST [2:2] OF IfcDirection := IfcBaseAxis(2,SELF\IfcCartesianTransformationOperator.Axis1,
SELF\IfcCartesianTransformationOperator.Axis2,?);
WHERE
DimEqual2 : SELF\IfcCartesianTransformationOperator.Dim = 2;
Axis1Is2D : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis1)) OR
(SELF\IfcCartesianTransformationOperator.Axis1.Dim = 2);
Axis2Is2D : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis2)) OR
(SELF\IfcCartesianTransformationOperator.Axis2.Dim = 2);
END_ENTITY;
References: IfcSurfaceTexture IfcDerivedProfileDef IfcMirroredProfileDef