IfcOrientedEdge

IfcOrientedEdge

实体定义

注:根据ISO/IEC 10303-42:1992的定义

定向边缘是从另一边缘构造的边缘,并且包含BOOLEAN方向标志,以指示构造的边缘的方向是否与原始边缘的方向一致。除了可能的方向外,定向边与原始边等效。

 

一种常见的做法是实体建模系统要有一个实体来表示边缘的“使用”或“遍历”。这个“使用”实体明确表示流形实体中的要求,即每条边必须精确地遍历两次,每个方向一次。“使用”功能由面向边缘子类型的边缘提供。

注:根据ISO 10303-42中定义的定向边缘改编的实体。

IFC2.0中的新实体。

 

Formal Propositions

RuleDescription
EdgeElementNotOriented The edge element shall not be an oriented edge.
 

 

 

Attribute inheritance

#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
IfcTopologicalRepresentationItem
IfcEdge
IfcOrientedEdge
3 EdgeElement IfcEdge [1:1] Edge entity used to construct this oriented edge. X
4 Orientation IfcBoolean [1:1] BOOLEAN, If TRUE the topological orientation as used coincides with the orientation from start vertex to end vertex of the edge element. If FALSE otherwise. X
  EdgeStart
:=IfcBooleanChoose (Orientation, EdgeElement.EdgeStart, EdgeElement.EdgeEnd)
IfcVertex [1:1] The start vertex of the oriented edge. It derives from the vertices of the edge element after taking account of the orientation. X
  EdgeEnd
:=IfcBooleanChoose (Orientation, EdgeElement.EdgeEnd, EdgeElement.EdgeStart)
IfcVertex [1:1] The end vertex of the oriented edge. It derives from the vertices of the edge element after taking account of the orientation. X
 

EXPRESS Specification

ENTITY IfcOrientedEdge
 SUBTYPE OF (IfcEdge);
  EdgeElement : IfcEdge;
  Orientation : IfcBoolean;
 DERIVE
  SELF\IfcEdge.EdgeStart : IfcVertex := IfcBooleanChoose (Orientation, EdgeElement.EdgeStart, EdgeElement.EdgeEnd);
  SELF\IfcEdge.EdgeEnd : IfcVertex := IfcBooleanChoose (Orientation, EdgeElement.EdgeEnd, EdgeElement.EdgeStart);
 WHERE
  EdgeElementNotOriented : NOT('IFCTOPOLOGYRESOURCE.IFCORIENTEDEDGE' IN TYPEOF(EdgeElement));
END_ENTITY;

 

#################

posted @ 2022-12-19 21:04  西北逍遥  阅读(21)  评论(0编辑  收藏  举报