Class Ifc4x3_rc1::IfcEdge¶
Defined in File Ifc4x3_rc1.h
Nested Relationships¶
This class is a nested type of Struct Ifc4x3_rc1.
Inheritance Relationships¶
Base Type¶
public Ifc4x3_rc1::IfcTopologicalRepresentationItem
(Class Ifc4x3_rc1::IfcTopologicalRepresentationItem)
Derived Types¶
public Ifc4x3_rc1::IfcEdgeCurve
(Class Ifc4x3_rc1::IfcEdgeCurve)public Ifc4x3_rc1::IfcOrientedEdge
(Class Ifc4x3_rc1::IfcOrientedEdge)public Ifc4x3_rc1::IfcSubedge
(Class Ifc4x3_rc1::IfcSubedge)
Class Documentation¶
-
class
Ifc4x3_rc1
::
IfcEdge
: public Ifc4x3_rc1::IfcTopologicalRepresentationItem¶ Definition from ISO/CD 10303-42:1992: An edge is the topological construct corresponding to the connection of two vertices. More abstractly, it may stand for a logical relationship between two vertices. The domain of an edge, if present, is a finite, non-self-intersecting open curve in RM, that is, a connected 1-dimensional manifold. The bounds of an edge are two vertices, which need not be distinct. The edge is oriented by choosing its traversal direction to run from the first to the second vertex. If the two vertices are the same, the edge is a self loop. The domain of the edge does not include its bounds, and 0 ≤ Ξ ≤ ∞. Associated with an edge may be a geometric curve to locate the edge in a coordinate space; this is represented by the edge curve (IfcEdgeCurve) subtype. The curve shall be finite and non-self-intersecting within the domain of the edge. An edge is a graph, so its multiplicity M and graph genus Ge may be determined by the graph traversal algorithm. Since M = E = 1, the Euler equation (1) reduces in the case to
where V = 1 or 2, and Ge = 1 or 0. Specifically, the topological edge defining data shall satisfy:
an edge has two vertices
the vertices need not be distinct
Equation (2) shall hold.
The geometry between the two vertices defaults to a straight line if no curve geometry is assigned using the subtype IfcEdgeCurve. The IfcEdge can therefore be used to exchange straight edges without an associated geometry provided by IfcLine or IfcPolyline thought IfcEdgeCurve.EdgeGeometry.
Figure 333 illustrates an example where the bounds of the IfcEdge are given by the EdgeStart and EdgeEnd; this also determines the direction of the edge. The location within a coordinate space is determined by the IfcVertexPoint type for EdgeStart and EdgeEnd. Since no edge geometry is assigned, it defaults to a straight line agreeing to the direction sense.
Figure 333 — Edge representation
NOTE Corresponding ISO 10303 entity: edge. Please refer to ISO/IS 10303-42:1994, p. 130 for the final definition of the formal standard.
HISTORY New Entity in IFC Release 2.0
Informal propositions:
The edge has dimensionality 1. The extend of an edge shall be finite and nonzero.
Subclassed by Ifc4x3_rc1::IfcEdgeCurve, Ifc4x3_rc1::IfcOrientedEdge, Ifc4x3_rc1::IfcSubedge
Public Types
-
typedef IfcTemplatedEntityList<IfcEdge>
list
¶
Public Functions
-
::Ifc4x3_rc1::IfcVertex *
EdgeStart
() const¶ Start point (vertex) of the edge.
-
void
setEdgeStart
(::Ifc4x3_rc1::IfcVertex *v)¶
-
::Ifc4x3_rc1::IfcVertex *
EdgeEnd
() const¶ End point (vertex) of the edge. The same vertex can be used for both EdgeStart and EdgeEnd.
-
void
setEdgeEnd
(::Ifc4x3_rc1::IfcVertex *v)¶
-
IfcEdge
(IfcEntityInstanceData *e)¶
-
IfcEdge
(::Ifc4x3_rc1::IfcVertex *v1_EdgeStart, ::Ifc4x3_rc1::IfcVertex *v2_EdgeEnd)¶