#### 8.7.3.12 IfcLine

| Ligne
| Linie

The IfcLine is an unbounded line parameterized by an IfcCartesianPoint and an IfcVector. The magnitude of the IfcVector affects the parameterization of the line, but it does not bound the line.

> NOTE A line segment is defined using either the IfcPolyline with two Points, or the IfcTrimmedCurve with BasisCurve being an IfcLine.

> EXAMPLE Figure 122 illustrates an unbounded IfcLine and a bounded IfcTrimmedCurve. A bounded line starting at 0.,0. and ending at 0.,2. can be defined by:

> 1. IfcLine with IfcVector.Magnitude: 2.0 AND IfcTrimmedCurve with Trim1: 0. and Trim2: 1. (and trimming preference being parameter);
> 2. IfcLine with IfcVector.Magnitude: 1.0 AND IfcTrimmedCurve with Trim1: 0. and Trim2: 2. (and trimming preference being parameter);
> 3. IfcLine AND IfcTrimmedCurve with Trim1::IfcCartesianPoint [0.,0.] and Trim2::IfcCartesianPoint [0.,2.] (and trimming preference being Cartesian) - the IfcVector.Magnitude has no effect;
> 4. IfcPolyline with Points[1] being 0.,0. and Points[2] being 0.,2.

Figure 122 — Unbounded IfcLine and bounded IfcTrimmedCurve

> NOTE Definition according to ISO/CD 10303-42:1992
> A line is an unbounded curve with constant tangent direction. A line is defined by a point and a direction. The positive direction of the line is in the direction of the dir vector. The curve is parameterized as follows:

> > P = Pnt
> > V = Dir
> > λ(u) = P + u V

> and the parametric range is: -∞ < u < ∞

> NOTE Entity adapted from line defined in ISO 10303-42

> HISTORY New entity in IFC1.0

XSD Specification:

<xs:element name="IfcLine" type="ifc:IfcLine" substitutionGroup="ifc:IfcCurve" nillable="true"/>
<xs:complexType name="IfcLine">
<xs:complexContent>
<xs:extension base="ifc:IfcCurve">
<xs:sequence>
<xs:element name="Pnt" type="ifc:IfcCartesianPoint" nillable="true"/>
<xs:element name="Dir" type="ifc:IfcVector" nillable="true"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>

EXPRESS Specification:

ENTITY IfcLine

| SUBTYPE OF (IfcCurve);

Pnt | : | IfcCartesianPoint;
Dir | : | IfcVector;

| WHERE

SameDim | : | Dir.Dim = Pnt.Dim;

END_ENTITY;

Attribute Definitions:

Pnt | : | The location of the IfcLine.
Dir | : | The direction of the IfcLine, the magnitude and units of Dir affect the parameterization of the line.

Formal Propositions:

SameDim | : | The dimensionality of the Pnt, provided by IfcCartesianPoint, shall be the same as the dimensionality of the Dir, provided by IfcVector.

Inheritance Graph:

ENTITY IfcLine

| ENTITY IfcRepresentationItem

| INVERSE

LayerAssignment | : | SET [0:1] OF IfcPresentationLayerAssignment FOR AssignedItems;
StyledByItem | : | SET [0:1] OF IfcStyledItem FOR Item;

| ENTITY IfcGeometricRepresentationItem

| ENTITY IfcCurve

| DERIVE

Dim | : | IfcDimensionCount := IfcCurveDim(SELF);

| ENTITY IfcLine

Pnt | : | IfcCartesianPoint;
Dir | : | IfcVector;

END_ENTITY;

Link to this page