Kante als Schleife | |
Edge Loop |
NOTE Definition according to ISO/CD 10303-42:1992
An edge_loop is a loop with nonzero extent. It is a path in which the start and end vertices are the same. Its domain, if present, is a closed curve. An edge_loop may overlap itself.
NOTE Entity adapted from edge_loop defined in ISO 10303-42.
HISTORY New entity in IFC2x2.
Informal Propositions:
# | Attribute | Type | Cardinality | Description | G |
---|---|---|---|---|---|
1 | EdgeList | IfcOrientedEdge | L[1:?] | A list of oriented edge entities which are concatenated together to form this path. | X |
Ne :=SIZEOF(EdgeList) | IfcInteger | The number of elements in the edge list. | X |
Rule | Description |
---|---|
IsClosed | The start vertex of the first edge shall be the same as the end vertex of the last edge. This ensures that the path is closed to form a loop. |
IsContinuous | The end vertex of each edge shall be the same as the start vertex of its successor. |
# | Attribute | Type | Cardinality | Description | G |
---|---|---|---|---|---|
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.
IFC2x3 CHANGE The inverse attribute LayerAssignments has been added. IFC4 CHANGE The inverse attribute LayerAssignment has been restricted to max 1. Upward compatibility for file based exchange is guaranteed. | 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.
IFC2x3 CHANGE The inverse attribute StyledByItem has been added. | X | |
IfcTopologicalRepresentationItem | |||||
IfcLoop | |||||
IfcEdgeLoop | |||||
1 | EdgeList | IfcOrientedEdge | L[1:?] | A list of oriented edge entities which are concatenated together to form this path. | X |
Ne :=SIZEOF(EdgeList) | IfcInteger | The number of elements in the edge list. | X |
<xs:element name="IfcEdgeLoop" type="ifc:IfcEdgeLoop" substitutionGroup="ifc:IfcLoop" nillable="true"/>
<xs:complexType name="IfcEdgeLoop">
<xs:complexContent>
<xs:extension base="ifc:IfcLoop">
<xs:sequence>
<xs:element name="EdgeList">
<xs:complexType>
<xs:sequence>
<xs:element ref="ifc:IfcOrientedEdge" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute ref="ifc:itemType" fixed="ifc:IfcOrientedEdge"/>
<xs:attribute ref="ifc:cType" fixed="list"/>
<xs:attribute ref="ifc:arraySize" use="optional"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
ENTITY IfcEdgeLoop
SUBTYPE OF (IfcLoop);
EdgeList : LIST [1:?] OF IfcOrientedEdge;
DERIVE
Ne : IfcInteger := SIZEOF(EdgeList);
WHERE
IsClosed : (EdgeList[1].EdgeStart) :=: (EdgeList[Ne].EdgeEnd);
IsContinuous : IfcLoopHeadToTail(SELF);
END_ENTITY;