8.7.3.12 IfcGridPlacement(网格定位)
8.7.3.12.1 语义定义(Semantic definition)
IFC4.3.0.0 变更说明 在IFC 4.3中,_PlacementRelTo_属性已从IfcLocalPlacement移至其超类型IfcObjectPlacement(也是本实体的超类型)。这意味着为了实现正确的全局定位,IfcGridPlacement将通过IfcObjectPlacement.PlacementRelTo引用(a) IfcGrid的ObjectPlacement,并通过IfcVirtualGridIntersection引用(b)同一网格中包含的一对IfcGridAxis。
_IfcGridPlacement_对_IfcObjectPlacement_进行了特殊化定义,其中对象坐标系的位置和轴向通过引用_IfcGrid_中定义的设计网格来确定。
对象坐标系的位置由属性_PlacementLocation_给出。它被定义为_IfcVirtualGridIntersection_,即两个网格轴之间的交点(可含偏移量)。
对象坐标系x轴的轴向通过以下方式确定:
- PlacementRefDirection = 空值:通过第一个网格轴(PlacementLocation.IntersectingAxes[1])在虚拟交点处的切线方向确定(若提供了_PlacementLocation.OffsetDistances_,则可能使用偏移曲线);
- PlacementRefDirection = IfcDirection:通过显式提供的方向信息确定;
- PlacementRefDirection = IfcVirtualGridIntersection:通过_PlacementLocation_的虚拟网格交点与_PlacementRefDirection_的虚拟网格交点之间的切线方向确定。必须考虑_PlacementLocation_和_PlacementRefDirection_的_IfcVirtualGridIntersection_中可能提供的偏移量。
_IfcGridPlacement_的y轴方向为x轴的正交补向量。由x轴和y轴定义的平面应与_IfcGrid_局部定位的xy平面共面。
z轴方向为x轴与y轴叉积的方向,即_IfcGridPlacement_的z轴应与_IfcGrid_局部定位的z轴共线。
以下图示展示了_IfcGridPlacement_中定位点和方向的使用方法。

图1展示了PlacementRefDirection未提供的情况——对象坐标系由以下要素定义:
- 位置:由PlacementLocation的虚拟网格交点确定
- x轴方向:由虚拟网格交点偏移位置处第一条相交轴的切线方向确定

图2展示了PlacementRefDirection以IfcDirection形式提供的情况——对象坐标系由以下要素定义:
- 位置:由PlacementLocation的虚拟网格交点确定
- x轴方向:由IfcDirection的DirectionRatios确定,仅考虑x和y方向的比率

图3展示了PlacementRefDirection以IfcVirtualGridIntersection形式提供的情况——对象坐标系由以下要素定义:
- 位置:由PlacementLocation的虚拟网格交点确定
- x轴方向:由PlacementLocation的虚拟网格交点与PlacementRefDirection的虚拟网格交点之间的连线切线方向确定
8.7.3.12.2 实体继承(Entity inheritance)
8.7.3.12.3 特性(Attributes)
| # | 特性(Attributes) | 类型 | 描述 |
|---|---|---|---|
| IfcObjectPlacement (3) | |||
| 1 | PlacementRelTo | OPTIONAL IfcObjectPlacement |
引用提供相对定位的对象定位,其定位可在网格、局部坐标系或线性参照定位中。如果省略,在线性定位情况下,将由引用的 IfcAlignment 轴的水平对齐原点确定;在局部定位情况下,将由几何表示上下文确定。 |
| PlacesObject | SET [0:?] OF IfcProduct FOR ObjectPlacement |
IfcObjectPlacement 应用于为 IfcProduct 实例提供定位和对象坐标系。
|
|
| ReferencedByPlacements | SET [0:?] OF IfcObjectPlacement FOR PlacementRelTo |
无可用描述 |
|
| 点击显示 3 个隐藏的继承特性 点击隐藏 3 个继承特性 | |||
| IfcGridPlacement (2) | |||
| 2 | PlacementLocation | IfcVirtualGridIntersection |
通过两个网格轴交点定义的对象坐标系位置。 |
| 3 | PlacementRefDirection | OPTIONAL IfcGridPlacementDirectionSelect |
引用显式方向或第二个网格轴交点,用于定义网格定位的方向。 |
8.7.3.12.4 形式化表示(Formal representation)
ENTITY IfcGridPlacement
SUBTYPE OF (IfcObjectPlacement);
PlacementLocation : IfcVirtualGridIntersection;
PlacementRefDirection : OPTIONAL IfcGridPlacementDirectionSelect;
END_ENTITY;