码迷,mamicode.com
首页 > 其他好文 > 详细

IfcPolygonalBoundedHalfSpace

时间:2020-07-19 17:57:04      阅读:87      评论:0      收藏:0      [点我收藏+]

标签:measure   cstyle   img   复合   source   space   nes   rip   enc   

多边形有界半空间是半空间实体的一种特殊子类型,其中布尔表达式中使用的半空间的材质由多边形边界进行边界。半空间的底面通过其相对于对象坐标系的法线定位(如在超类型IfcHalfSpaceSolid中定义的),其多边形(带或不带弧段)边界在由位置属性建立的位置坐标系的XY平面中定义,减法体将垂直于位置坐标系的XY平面拉伸,即,拉伸到由“位置”属性定义的正Z轴的方向。

边界由位置坐标系XY平面内的二维多段线(或由直线段和圆弧段组成的二维复合曲线)定义。半空间中曲面的边由曲面法线和一致标志确定。如果agreement标志为TRUE,则子集是法线指向的子集。如果agreement标志为FALSE,则该子集就是法线指向的子集。

注:多边形有界半空间不是IfcSolidModel的子类型,半空间实体仅用作布尔表达式中的操作数。

下图说明了多边形有界半空间。

技术图片

 

●黑色坐标表示对象坐标系(通常由IfcLocalPlacement提供)。

●绿色坐标表示位置坐标系;多边形边界在该坐标系内给出。它由IfcPolyg提供有边界的半空间。位置. 此坐标系相对于对象坐标系。减法体的挤出方向为正Z轴。

●红色坐标表示平面的法线。由基面提供(IFC表面位置). 此法线也是相对于对象坐标系的。

在布尔差分表达式中,用多边形有界半空间来限制半空间的体积。只有由半空间实体和拉伸区域实体(通过拉伸多边形边界定义)之间的理论交点定义的零件用于布尔表达式。

多边形边界定义了二维多段线,它限制了布尔表达式中半空间的有效性。基面由一个平面定义,平面的法线与AgreementFlag一起定义了半空间材质的边。

IFC2x中增加的新实体。

 

非正式提议:

①提供多边形边界的ifc多边形或ifc复合曲线应关闭。

②如果多边形边界由IfcCompositeCurve给出,则它只能具有IfcPolyline类型的IfcCompositeCurveSegment,或ifcTimmedCurve(具有IfcLine或IfcCircle类型的基本曲线)

③超类型IfcHalfSpaceSolid中定义的基面应为IfcPlane类型

④作为基面的平面法线不得垂直于位置坐标系的z轴

 

 

Formal Propositions

RuleDescription
BoundaryDim The bounding polyline should have the dimensionality of 2.
BoundaryType Only bounded curves of type IfcCompositeCurve, or IfcPolyline are valid boundaries.
 

 

 

 

技术图片

 

 

#AttributeTypeCardinalityDescriptionC
IfcRepresentationItem
  LayerAssignment IfcPresentationLayerAssignment
@AssignedItems
S[0:1] 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. X
  StyledByItem IfcStyledItem
@Item
S[0:1] Reference to the IfcStyledItem that provides presentation information to the representation, e.g. a curve style, including colour and thickness to a geometric curve. X
IfcGeometricRepresentationItem
IfcHalfSpaceSolid
1 BaseSurface IfcSurface [1:1] Surface defining side of half space. X
2 AgreementFlag IfcBoolean [1:1] The agreement flag is TRUE if the normal to the BaseSurface points away from the material of the IfcHalfSpaceSolid. Otherwise it is FALSE. X
  Dim
:=3
IfcDimensionCount [1:1] The space dimensionality of this class, it is always 3 X
IfcPolygonalBoundedHalfSpace
3 Position IfcAxis2Placement3D [1:1]

Definition of the position coordinate system for the bounding polyline and the base surface.

X
4 PolygonalBoundary IfcBoundedCurve [1:1] Two-dimensional polyline bounded curve, defined in the xy plane of the position coordinate system. X
EXPRESS Specification
ENTITY IfcPolygonalBoundedHalfSpace
 SUBTYPE OF (IfcHalfSpaceSolid);
  Position : IfcAxis2Placement3D;
  PolygonalBoundary : IfcBoundedCurve;
 WHERE
  BoundaryDim : PolygonalBoundary.Dim = 2;
  BoundaryType : SIZEOF(TYPEOF(PolygonalBoundary) * [ ‘IFCGEOMETRYRESOURCE.IFCPOLYLINE‘, ‘IFCGEOMETRYRESOURCE.IFCCOMPOSITECURVE‘] ) = 1;
END_ENTITY;

 

IfcPolygonalBoundedHalfSpace

标签:measure   cstyle   img   复合   source   space   nes   rip   enc   

原文地址:https://www.cnblogs.com/herd/p/13339542.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!