Kartesische Transformation - zweidimensional nicht gleichmäßig (2D) | |
Cartesian Transformation Operator2 Dnon Uniform | |
Opérateur 2D de transformation cartésienne non uniforme |
Item | SPF | XML | Change | Description | IFC4 Addendum 1 |
---|---|---|---|---|
IfcCartesianTransformationOperator2DnonUniform | ||||
Scale | MODIFIED | Type changed from REAL to IfcReal. | ||
Scale2 | MODIFIED | Type changed from REAL to IfcReal. |
A Cartesian transformation operator 2d non uniform defines a geometric transformation in two-dimensional space composed of translation, rotation, mirroring and non uniform scaling. Non uniform scaling is given by two different scaling factors:
If the Scale factor (at supertype IfcCartesianTransformationOperator) is omitted, it defaults to 1.0. If the Scale2 factor is omitted, it defaults to the value of Scale (the x axis scale factor).
NOTE The scale factor (Scl) defined at the supertype IfcCartesianTransformationOperator is used to express the calculated Scale factor (normally x axis scale factor).
HISTORY New entity in IFC2x.
# | Attribute | Type | Cardinality | Description | C |
---|---|---|---|---|---|
5 | Scale2 | IfcReal | [0:1] | The scaling value specified for the transformation along the axis 2. This is normally the y scale factor. | X |
Scl2 :=NVL(Scale2, SELF\IfcCartesianTransformationOperator.Scl) | IfcReal | [1:1] | The derived scale S(2) of the transformation along the axis 2 (normally the y axis), equal to Scale2 if that exists, or equal to the derived Scl1 (normally the x axis scale factor) otherwise. | X |
Rule | Description |
---|---|
Scale2GreaterZero | The derived scaling Scl2 shall be greater than zero. |
# | Attribute | Type | Cardinality | Description | C |
---|---|---|---|---|---|
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. | 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. | X | |
IfcGeometricRepresentationItem | |||||
IfcCartesianTransformationOperator | |||||
1 | Axis1 | IfcDirection | [0:1] | The direction used to determine U[1], the derived X axis direction. | X |
2 | Axis2 | IfcDirection | [0:1] | The direction used to determine U[2], the derived Y axis direction. | X |
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 | IfcReal | [0:1] | The scaling value specified for the transformation. | X |
Scl :=NVL(Scale, 1.0) | IfcReal | [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 | |
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 | |
IfcCartesianTransformationOperator2DnonUniform | |||||
5 | Scale2 | IfcReal | [0:1] | The scaling value specified for the transformation along the axis 2. This is normally the y scale factor. | X |
Scl2 :=NVL(Scale2, SELF\IfcCartesianTransformationOperator.Scl) | IfcReal | [1:1] | The derived scale S(2) of the transformation along the axis 2 (normally the y axis), equal to Scale2 if that exists, or equal to the derived Scl1 (normally the x axis scale factor) otherwise. | X |
<xs:element name="IfcCartesianTransformationOperator2DnonUniform" type="ifc:IfcCartesianTransformationOperator2DnonUniform" substitutionGroup="ifc:IfcCartesianTransformationOperator2D" nillable="true"/>
<xs:complexType name="IfcCartesianTransformationOperator2DnonUniform">
<xs:complexContent>
<xs:extension base="ifc:IfcCartesianTransformationOperator2D">
<xs:attribute name="Scale2" type="ifc:IfcReal" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
ENTITY IfcCartesianTransformationOperator2DnonUniform
SUBTYPE OF (IfcCartesianTransformationOperator2D);
Scale2 : OPTIONAL IfcReal;
DERIVE
Scl2 : IfcReal := NVL(Scale2, SELF\IfcCartesianTransformationOperator.Scl);
WHERE
Scale2GreaterZero : Scl2 > 0.0;
END_ENTITY;