8.18.3.7 IfcMapConversionScaled
8.18.3.7.1 语义定义(Semantic definition)
IfcMapConversionScaled(地图缩放转换)
IfcMapConversionScaled 是一种 IfcMapConversion 类型,用于提供坐标转换的缩放因子。该实体仅在需要显式交换缩放因子的场景下使用。
请注意 通常这类转换适用于规模相对较小的设施(如建筑项目),项目中会约定采用恒定缩放因子。
该地图缩放转换过程按以下步骤执行:
- 通过 IfcMapConversionScaled.Scale 对三轴(x,y,z)进行统一缩放
- 通过 IfcMapConversionScaled.FactorX 对 x 轴进行缩放
- 通过 IfcMapConversionScaled.FactorY 对 y 轴进行缩放
- 通过 IfcMapConversionScaled.FactorZ 对 z 轴进行缩放
- 绕 z 轴进行逆时针旋转 θ 角度,其中: $$ \theta=arctan\left(\frac{\text{XAxisOrdinate}}{\text{XAxisAbscissa}}\right) $$
- 最后通过 IfcMapConversionScaled.Eastings、IfcMapConversionScaled.Northings、IfcMapConversionScaled.OrthogonalHeight 实现 (x,y,z) 方向的平移
坐标变换公式
以下是 IfcMapConversionScaled 的坐标变换公式。公式提供两种形式:a) 变换矩阵形式,便于程序员理解精确的运算顺序;b) 简化方程形式,适用于单点坐标计算。
a) 矩阵形式
$$ \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) 方程形式
$$ \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)
| # | 特性(Attributes) | 类型 | 描述 |
|---|---|---|---|
| IfcCoordinateOperation (2) | |||
| 1 | SourceCRS | IfcCoordinateReferenceSystemSelect |
操作的源坐标参考系。 |
| 2 | TargetCRS | IfcCoordinateReferenceSystem |
操作的目标坐标参考系。 |
| IfcMapConversion (6) | |||
| 3 | Eastings | IfcLengthMeasure |
指定目标地图坐标参考系坐标系中东向的位置。 |
| 4 | Northings | IfcLengthMeasure |
指定目标地图坐标参考系坐标系中北向的位置。 |
| 5 | OrthogonalHeight | IfcLengthMeasure |
相对于指定垂直基准面的正交高度。 |
| 6 | XAxisAbscissa | OPTIONAL IfcReal |
指定表示工程坐标参考系局部 x 轴位置的向量终点在东向轴上的值。 |
| 7 | XAxisOrdinate | OPTIONAL IfcReal |
指定表示工程坐标参考系局部 x 轴位置的向量终点在北向轴上的值。 与 XAxisAbscissa 一起,提供了局部 x 轴在地图坐标系水平面内的方向。 |
| 8 | Scale | OPTIONAL IfcReal |
当坐标参考系的单位与工程坐标系的单位不一致时使用的比例因子。如果省略,则假定值为 1.0。 |
| 点击显示 8 个隐藏的继承特性 点击隐藏 8 个继承特性 | |||
| IfcMapConversionScaled (3) | |||
| 9 | FactorX | IfcReal |
无可用描述 |
| 10 | FactorY | IfcReal |
无可用描述 |
| 11 | FactorZ | IfcReal |
无可用描述 |
8.18.3.7.4 形式化表示(Formal representation)
ENTITY IfcMapConversionScaled
SUBTYPE OF (IfcMapConversion);
FactorX : IfcReal;
FactorY : IfcReal;
FactorZ : IfcReal;
END_ENTITY;