Represent Line
Overview
Identifies the information requirements for the provision of a line.
A line is specified as commencing at a point and having magnitude and direction specified by a vector.
Results
Specification of a line with start point, magnitude and direction.
| Description | Entity/Pset/Functional Part | MAN | REC | OPT |
|---|---|---|---|---|
| Set the coordinate values for the start point of the line.
Coordinate[1] is the X coordinate, Coordinate[2] is the Y coordinate, and Coordinate[3] is the Z coordinate |
IfcCartesianPoint.Coordinates::IfcLengthMeasure | |||
| The space dimensionality for the point is derived from the number of coordinates specified. | IfcCartesianPoint.Dim | |||
| Set the values for the direction ratios that will determine the orientation of the line.
Direction ratios determine the angle of the line within the coordinate space. 2 values are required for a 2 dimensional line, 3 are necessary for a 3 dimensional line. |
IfcDirection.DirectionRatios::REAL | |||
| The space dimensionality for the direction is derived from the number of ratio values specified. | IfcDirection.Dim | |||
| Assign the direction as the orientation of the vector | IfcVector.Orientation::IfcDirection | |||
| Set the magnitude of the vector for the line
This sets the length of the line. |
IfcVector.Magnitude::IfcLengthMeasure | |||
| The space dimensionality for the vector is derived from the orientation defined by the direction ratios. | IfcDirection.Dim | |||
| Assign the point as the start point of the line | IfcLine.Pnt::IfcCartesianPoint | |||
| Assign the vector as the direction of the line | IfcLine.Dir::IfcVector | |||
| The space dimensionality for the line is derived from dimensional context of the line (2 or 3 dimensional).
This attribute is inherited from the IfcCurve supertype. |
IfcLine.Dim |
IFC Entities Required
- IfcCartesianPoint
- IfcCurve
- IfcDirection
- IfcGeometricRepresentationItem
- IfcLine
- IfcPoint
- IfcRepresentationItem
- IfcVector
IFC Datatypes Required
- IfcDimensionCount
- IfcLengthMeasure
IFC Functions Required
- -
IDM Functional Parts Required
- -
EXPRESS-G
EXPRESS Schema
SCHEMA FP_REPRESENT_LINE;
TYPE IfcDimensionCount = INTEGER;
WHERE
WR1 : { 0 < SELF <= 3 };
END_TYPE;
TYPE IfcLengthMeasure = REAL;
END_TYPE;
ENTITY IfcGeometricRepresentationItem
ABSTRACT SUPERTYPE OF (ONEOF(IfcCurve, IfcDirection, IfcPoint, IfcVector))
SUBTYPE OF(IfcRepresentationItem);
END_ENTITY;
ENTITY IfcRepresentationItem
ABSTRACT SUPERTYPE;
END_ENTITY;
ENTITY IfcDirection
SUBTYPE OF(IfcGeometricRepresentationItem);
DirectionRatios : LIST [2:3] OF REAL;
DERIVE
Dim : IfcDimensionCount := HIINDEX(DirectionRatios);
END_ENTITY;
ENTITY IfcCartesianPoint
SUBTYPE OF(IfcPoint);
Coordinates : LIST [1:3] OF IfcLengthMeasure;
DERIVE
Dim : IfcDimensionCount := HIINDEX(Coordinates);
WHERE
WR1 : HIINDEX(Coordinates) >= 2;
END_ENTITY;
ENTITY IfcPoint
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcGeometricRepresentationItem);
END_ENTITY;
ENTITY IfcCurve
ABSTRACT SUPERTYPE
SUBTYPE OF(IfcGeometricRepresentationItem);
DERIVE
Dim : IfcDimensionCount := IfcCurveDim(SELF);
END_ENTITY;
ENTITY IfcLine
SUBTYPE OF(IfcCurve);
Pnt : IfcCartesianPoint;
Dir : IfcVector;
WHERE
WR1 : Dir.Dim = Pnt.Dim;
END_ENTITY;
ENTITY IfcVector
SUBTYPE OF(IfcGeometricRepresentationItem);
Orientation : IfcDirection;
Magnitude : IfcLengthMeasure;
DERIVE
Dim : IfcDimensionCount := Orientation.Dim;
WHERE
WR1 : Magnitude >= 0.0;
END_ENTITY;
END_SCHEMA;