8.18.3.7 IfcMapConversionScaled
8.18.3.7.1 Semantic definition
An IfcMapConversionScaled is a type of IfcMapConversion that supplies factors for coordinate conversion. The usage is restricted to when factors are explicitly exchanged.
Typically, these are relatively smaller facilities such as buildings where constant factors are agreed on a project. New entity in IFC4X3_ADD1For this transformation, IfcMapConversionScaled data are used for:
- a scaling of the three axes (x,y,z), by the same IfcMapConversionScaled.Scale
- a multiplication of the x-axis by IfcMapConversionScaled.FactorX
- a multiplication of the y-axis by IfcMapConversionScaled.FactorY
- a multiplication of the z-axis by IfcMapConversionScaled.FactorZ
- followed by an anti-clockwise rotation about the z-axis of θ, where: $$ \theta=arctan\left(\frac{\text{XAxisOrdinate}}{\text{XAxisAbscissa}}\right) $$
- and then a translation in (x,y,z) of IfcMapConversionScaled.Eastings, IfcMapConversionScaled.Northings, IfcMapConversionScaled.OrthogonalHeight.
Equations
Below are the relevant equations for IfcMapConversionScaled. The equations are given: a) in transformation matrix form, useful for programmers to understand the exact sequence of operations and b) in a simplified equation form, which is sufficient for calculating a single point.
a) matrix form
$$ \begin{bmatrix} x'\\ y'\\ z' \end{bmatrix} = \begin{bmatrix} cos\theta & -sin\theta & 0 \\ sin\theta & cos\theta & 0 \\ 0 & 0 & 1 \end{bmatrix} \cdot \begin{bmatrix} \text{FactorX} & 0 & 0 \\ 0 & \text{FactorY} & 0 \\ 0 & 0 & \text{FactorZ} \end{bmatrix} \cdot \begin{bmatrix} \text{Scale} & 0 & 0 \\ 0 & \text{Scale} & 0 \\ 0 & 0 & \text{Scale} \end{bmatrix} \cdot \begin{bmatrix} x \\ y \\ z \end{bmatrix} + \begin{bmatrix} \text{Eastings} \\ \text{Northings} \\ \text{OrthogonalHeight} \end{bmatrix} $$
b) equation form
$$ \begin{align} x' &= \text{Scale} \cdot \text{FactorX} \cdot cos\theta \cdot x-\text{Scale} \cdot \text{FactorY} \cdot sin\theta \cdot y+\text{Eastings} \\ y' &= \text{Scale} \cdot \text{FactorX} \cdot sin\theta \cdot x+\text{Scale} \cdot \text{FactorY} \cdot cos\theta \cdot y+\text{Northings} \\ z' &= \text{Scale} \cdot \text{FactorZ} \cdot z+\text{OrthogonalHeight} \end{align} $$
8.18.3.7.2 Entity inheritance
8.18.3.7.3 Attributes
# | Attribute | Type | Description |
---|---|---|---|
IfcCoordinateOperation (2) | |||
1 | SourceCRS | IfcCoordinateReferenceSystemSelect |
Source coordinate reference system for the operation. |
2 | TargetCRS | IfcCoordinateReferenceSystem |
Target coordinate reference system for the operation. |
IfcMapConversion (6) | |||
3 | Eastings | IfcLengthMeasure |
Specifies the location along the easting of the coordinate system of the target map coordinate reference system. for right-handed Cartesian coordinate systems this would establish the location along the x axis. |
4 | Northings | IfcLengthMeasure |
Specifies the location along the northing of the coordinate system of the target map coordinate reference system. for right-handed Cartesian coordinate systems this would establish the location along the y axis |
5 | OrthogonalHeight | IfcLengthMeasure |
Orthogonal height relative to the vertical datum specified. for right-handed Cartesian coordinate systems this would establish the location along the z axis |
6 | XAxisAbscissa | OPTIONAL IfcReal |
Specifies the value along the easting axis of the end point of a vector indicating the position of the local x axis of the engineering coordinate reference system. for right-handed Cartesian coordinate systems this would establish the location along the x axis together with the XAxisOrdinate it provides the direction of the local x axis within the horizontal plane of the map coordinate system |
7 | XAxisOrdinate | OPTIONAL IfcReal |
Specifies the value along the northing axis of the end point of a vector indicating the position of the local x axis of the engineering coordinate reference system. for right-handed Cartesian coordinate systems this would establish the location along the y axisXAxisAbscissa it provides the direction of the local x axis within the horizontal plane of the map coordinate system. |
8 | Scale | OPTIONAL IfcReal |
Scale to be used, when the units of the CRS are not identical to the units of the engineering coordinate system. If omitted, the value of 1.0 is assumed. |
Click to show 8 hidden inherited attributes Click to hide 8 inherited attributes | |||
IfcMapConversionScaled (3) | |||
9 | FactorX | IfcReal |
No description available. |
10 | FactorY | IfcReal |
No description available. |
11 | FactorZ | IfcReal |
No description available. |
8.18.3.7.4 Formal representation
ENTITY IfcMapConversionScaled
SUBTYPE OF (IfcMapConversion);
FactorX : IfcReal;
FactorY : IfcReal;
FactorZ : IfcReal;
END_ENTITY;