8.9.3.15 IfcCartesianTransformationOperator2DnonUniform
8.9.3.15.1 Semantic definition
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:
- SELF\IfcCartesianTransformationOperator.Scale: the x axis scale factor
- Scale2: the y axis scale factor
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).
The scale factor (Scl) defined at the supertype IfcCartesianTransformationOperator is used to express the calculated Scale factor (normally x axis scale factor). New entity in IFC2x.8.9.3.15.2 Entity inheritance
-
- IfcCartesianTransformationOperator
- IfcAnnotationFillArea
- IfcBooleanResult
- IfcBoundingBox
- IfcCartesianPointList
- IfcCsgPrimitive3D
- IfcCurve
- IfcDirection
- IfcFaceBasedSurfaceModel
- IfcFillAreaStyleHatching
- IfcFillAreaStyleTiles
- IfcGeometricSet
- IfcHalfSpaceSolid
- IfcLightSource
- IfcPlacement
- IfcPlanarExtent
- IfcPoint
- IfcSectionedSpine
- IfcSegment
- IfcShellBasedSurfaceModel
- IfcSolidModel
- IfcSurface
- IfcTessellatedItem
- IfcTextLiteral
- IfcVector
8.9.3.15.3 Attributes
# | Attribute | Type | Description |
---|---|---|---|
IfcRepresentationItem (2) | |||
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. The inverse attribute LayerAssignments has been added. 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. The inverse attribute StyledByItem has been added. |
|
IfcCartesianTransformationOperator (6) | |||
1 | Axis1 | OPTIONAL IfcDirection |
The direction used to determine U[1], the derived X axis direction. |
2 | Axis2 | OPTIONAL IfcDirection |
The direction used to determine U[2], 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 | IfcReal |
This attribute is formally derived.
The derived scale S of the transformation, equal to scale if that exists, or 1.0 otherwise. |
* | Dim | IfcDimensionCount |
This attribute is formally derived.
The space dimensionality of this class, determined by the space dimensionality of the local origin. |
IfcCartesianTransformationOperator2D (1) | |||
* | U | LIST [2:2] OF IfcDirection |
This attribute is formally derived.
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. |
Click to show 9 hidden inherited attributes Click to hide 9 inherited attributes | |||
IfcCartesianTransformationOperator2DnonUniform (2) | |||
5 | Scale2 | OPTIONAL IfcReal |
The scaling value specified for the transformation along the axis 2. This is normally the y scale factor. |
* | Scl2 | IfcReal |
This attribute is formally derived.
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. |
8.9.3.15.4 Formal propositions
Name | Description |
---|---|
Scale2GreaterZero |
The derived scaling Scl2 shall be greater than zero. |
|
8.9.3.15.5 Formal representation
ENTITY IfcCartesianTransformationOperator2DnonUniform
SUBTYPE OF (IfcCartesianTransformationOperator2D);
Scale2 : OPTIONAL IfcReal;
DERIVE
Scl2 : IfcReal := NVL(Scale2, SELF\IfcCartesianTransformationOperator.Scl);
WHERE
Scale2GreaterZero : Scl2 > 0.0;
END_ENTITY;