IfcFillAreaStyleHatching

IfcFillAreaStyleHatching用于定义基于已设置样式的直线的简单、基于矢量的填充图案。曲线的字体、颜色和厚度由HatchLineAppearance给出,角度由HatchLineAngle给出,到下一条填充线的距离由StartOfNextHatchLine给出,可以是偏移距离或向量。

注:根据ISO 10303-46的定义:

填充区域样式图案填充定义用于填充注释填充区域或曲面的曲线样式。

注意,如果填充图案涉及两行(可能交叉)填充线,则应将两个IfcFillAreaStyleHatching实例指定给IfcFillAreaStyle。两者共享由参照填充线使用的图案填充的同一(虚拟)原点(如果有偏移,则为参照剖面线的点)。

为了更好地控制图案填充外观,当使用其他字体的填充线而不是连续字体时,PatternStart允许沿着参考填充线偏移曲线字体图案的起点(如果未指定,PatternStart与虚拟原点的距离为零)。如果参考填充线不穿过(虚拟图案填充坐标系的)原点,则可以使用PatternStart来偏移它。

注意PatternStart的坐标是相对于IfcAnnotationFillArea的对象坐标原点给出的,或者如果存在,则是IfcAnnotationFillArea的FillAreaTarget属性。度量值以全局绘图长度单位给出,表示模型图案填充,如果提供,则可以通过基于比例的IfcGeometricRepresentationSubcontext的TargetScale转换为绘图单位。

不推荐使用PointOfReferenceHatchLine。

例1

这个例子展示了在HatchLineAppearance使用曲线字体“continuous”给出的简单图案填充。

剖面线的距离由正的长度测量值给出。角度(这里45'如果测量角度)是由孵化角度。

在本例中,PatternStart设置为NIL($)。

 

例2

这显示了示例1中使用不同曲线字体在HatchLineAppearance处进行的图案填充。

填充线的距离由正的长度度量值给出,因此字体图案的起点位于下一个填充线的点,该点由垂直于参考填充线原点的向量给定。

在本例中,PatternStart设置为NIL($)。

 

例3

此示例使用示例2中的图案填充和矢量来确定下一条填充线的图案起点。

图案开始是第一个可视曲线字体段的开始IfcCurveFont.CurveFont.

在本例中,PatternStart设置为NIL($)。

 

例4

此示例使用示例3中的图案填充,其中图案起点与参考填充线的原点偏移。也就是说,第一个可见的曲线字体填充图案段现在不会从参照填充线的原点开始。

 

例5

此示例使用示例4中的图案填充,其中填充图案相对于基础坐标系移动。

映射到iFCanotationFillAreaOccurrence的插入点的点现在与参照填充线的起点有一个X和Y偏移。也就是说,参照填充线现在不穿过图案填充的插入点。

 

例6

此示例显示在一个IfcFillAreaStyleHatching中对两个IfcFillAreaStyleHatching属性的使用。

请注意,PatternStart现在将从原点和曲线图案的起点替换参照填充线。当在一个ifcPillarEastyleHatching中使用多个ifcPillarEastYle图案填充以放置相互偏移的填充线行时,可以使用此选项。

 

注:实体改编自ISO10303-46中定义的填充-区域-样式-阴影线

IFC2x2中增加的新实体。

IFC2x3更改ifcfilleastylehatching通过使属性PatternStart和PointOfReferenceHatchLine可选而改变。属性StartOfNextHatchLine已更改为带有IfcPositiveLengthMeasure的选择。保证了基于文件的交换的向上兼容性。

IFC4更改startofNextchLine的属性数据类型已更改为IfcPositiveLengthMeasure和IfcVector的选择。

 

Formal Propositions

RuleDescription
PatternStart2D The IfcCartesianPoint, if given as value to PatternStart shall have the dimensionality of 2.
RefHatchLine2D The IfcCartesianPoint, if given as value to PointOfReferenceHatchLine shall have the dimensionality of 2.
 

 

 

 

 

#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
IfcFillAreaStyleHatching
1 HatchLineAppearance IfcCurveStyle [1:1] The curve style of the hatching lines. Any curve style pattern shall start at the origin of each hatch line. X
2 StartOfNextHatchLine IfcHatchLineDistanceSelect [1:1] A repetition factor that determines the distance between adjacent hatch lines. The factor can either be defined by a parallel offset, or by a repeat factor provided by IfcVector. X
3 PointOfReferenceHatchLine IfcCartesianPoint [0:1] A Cartesian point which defines the offset of the reference hatch line from the origin of the (virtual) hatching coordinate system. The origin is used for mapping the fill area style hatching onto an annotation fill area or surface. The reference hatch line would then appear with this offset from the fill style target point.
If not given the reference hatch lines goes through the origin of the (virtual) hatching coordinate system.
X
4 PatternStart IfcCartesianPoint [0:1] A distance along the reference hatch line which is the start point for the curve style font pattern of the reference hatch line.
If not given, the start point of the curve style font pattern is at the (virtual) hatching coordinate system.
X
5 HatchLineAngle IfcPlaneAngleMeasure [1:1] A plane angle measure determining the direction of the parallel hatching lines. X
EXPRESS Specification
ENTITY IfcFillAreaStyleHatching
 SUBTYPE OF (IfcGeometricRepresentationItem);
  HatchLineAppearance : IfcCurveStyle;
  StartOfNextHatchLine : IfcHatchLineDistanceSelect;
  PointOfReferenceHatchLine : OPTIONAL IfcCartesianPoint;
  PatternStart : OPTIONAL IfcCartesianPoint;
  HatchLineAngle : IfcPlaneAngleMeasure;
 WHERE
  PatternStart2D : NOT(EXISTS(PatternStart)) OR (PatternStart.Dim = 2) ;
  RefHatchLine2D : NOT(EXISTS(PointOfReferenceHatchLine)) OR (PointOfReferenceHatchLine.Dim = 2);
END_ENTITY;

 

posted @ 2020-07-16 17:39  西北逍遥  阅读(208)  评论(0编辑  收藏  举报