8.9.3.13 IfcCartesianTransformationOperator
ABSTRACT This definition may not be instantiated
8.9.3.13.1 Semantic definition
An IfcCartesianTransformationOperator defines an abstract supertype of different kinds of geometric transformations.
The transformation for a point with position vector P is defined by
P > A + _S_TP The transformation for a direction d is defined by
d > Td The transformation for a vector with orientation d and magnitude k is defined by
d > Td, and k > Sk For those entities whose attributes include an axis2 placement, the transformation is applied, after the derivation, to the derived attributes p defining the placement coordinate directions. For a transformed surface, the direction of the surface normal at any point is obtained by transforming the normal, at the corresponding point, to the original surface. For geometric entities with attributes (such as the radius of a circle) which have the dimensionality of length, the values will be multiplied by S.
For curves on surface the p curve.reference to curve will be unaffected by any transformation. The Cartesian transformation operator shall only be applied to geometry defined in a consistent system of units with the same units on each axis. With all optional attributes omitted, the transformation defaults to the identity transformation. The Cartesian transformation operator shall only be instantiated as one of its subtypes.
8.9.3.13.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.13.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. 

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. 

Click to show 2 hidden inherited attributes Click to hide 2 inherited attributes  
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. 
8.9.3.13.4 Formal propositions
Name  Description 

ScaleGreaterZero 
The derived scaling Scl shall be greater than zero. 

8.9.3.13.5 Formal representation
ENTITY IfcCartesianTransformationOperator
ABSTRACT SUPERTYPE OF (ONEOF
(IfcCartesianTransformationOperator2D
,IfcCartesianTransformationOperator3D))
SUBTYPE OF (IfcGeometricRepresentationItem);
Axis1 : OPTIONAL IfcDirection;
Axis2 : OPTIONAL IfcDirection;
LocalOrigin : IfcCartesianPoint;
Scale : OPTIONAL IfcReal;
DERIVE
Scl : IfcReal := NVL(Scale, 1.0);
Dim : IfcDimensionCount := LocalOrigin.Dim;
WHERE
ScaleGreaterZero : Scl > 0.0;
END_ENTITY;