8.9.3.13 IfcCartesianTransformationOperator(笛卡尔变换算子)
抽象 该定义可能不会被直接实例化。
8.9.3.13.1 语义定义(Semantic definition)
IfcCartesianTransformationOperator 定义了几何变换不同类型的一个抽象超类型。
对于位置向量为 P 的点的变换定义为
P -> A + _S_TP 对于方向 d 的变换定义为
d -> Td 对于方向为 d、大小为 k 的向量的变换定义为
d -> Td,以及 k -> Sk 对于那些属性包含 axis2 放置的实体,变换在派生后应用于定义放置坐标方向的派生属性 p。对于变换后的曲面,任意点处曲面法线的方向通过将原始曲面上对应点处的法线变换得到。对于具有长度量纲属性(例如圆的半径)的几何实体,其值将乘以 S。
对于曲面上的曲线,p 曲线对曲线的引用将不受任何变换的影响。笛卡尔变换算子应仅应用于在一致单位系统中定义的几何,且每个轴上的单位相同。如果所有可选属性均被省略,则变换默认为恒等变换。笛卡尔变换算子应仅作为其子类型之一进行实例化。
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)
| # | 特性(Attributes) | 类型 | 描述 |
|---|---|---|---|
| IfcRepresentationItem (2) | |||
| LayerAssignment | SET [0:1] OF IfcPresentationLayerAssignment FOR AssignedItems |
将表示项分配给单个或多个层。LayerAssignments 可以覆盖其所在的 IfcRepresentation 的 Items 列表中的 LayerAssignments。 |
|
| StyledByItem | SET [0:1] OF IfcStyledItem FOR Item |
引用为表示提供表现信息的 IfcStyledItem,例如,为几何曲线提供曲线样式,包括颜色和厚度。 |
|
| 点击显示 2 个隐藏的继承特性 点击隐藏 2 个继承特性 | |||
| IfcCartesianTransformationOperator (6) | |||
| 1 | Axis1 | OPTIONAL IfcDirection |
用于确定 U[1](派生 X 轴方向)的方向。 |
| 2 | Axis2 | OPTIONAL IfcDirection |
用于确定 U[2](派生 Y 轴方向)的方向。 |
| 3 | LocalOrigin | IfcCartesianPoint |
所需的平移,指定为笛卡尔点。变换中包含的实际平移是从几何原点到局部原点。 |
| 4 | Scale | OPTIONAL IfcReal |
为变换指定的缩放值。 |
| * | Scl | IfcReal |
此属性是形式化派生的
变换的派生缩放 S,如果存在 scale 则等于 scale,否则为 1.0。 |
| * | Dim | IfcDimensionCount |
此属性是形式化派生的
此类的空间维度,由局部原点的空间维度确定。 |
8.9.3.13.4 形式化命题(Formal propositions)
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;