An IfcCartesianPoint defines a point by coordinates in an orthogonal, right-handed Cartesian coordinate system. For the purpose of this specification only two and three dimensional Cartesian points are used.
NOTE Definition according to ISO/CD 10303-42:1992
A cartesian_point is a point defined by its coordinates in a rectangular Cartesian coordinate system, or in a parameter space. The entity is defined in a one, two or three-dimensional space as determined by the number of coordinates in the list. Depending upon the geometric representation context in which the point is used the names of the coordinates may be (x,y,z), or (u,v), or any other chosen values.
NOTE Entity adapted from cartesian_point defined in ISO 10303-42
HISTORY New entity in IFC1.0
|LayerAssignment||SET [0:1] OF IfcPresentationLayerAssignment FOR AssignedItems||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.
|StyledByItem||SET [0:1] OF IfcStyledItem FOR Item||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.
|1||Coordinates||LIST [1:3] OF IfcLengthMeasure||The first, second, and third coordinate of the point location. If placed in a two or three dimensional rectangular Cartesian coordinate system, Coordinates is the X coordinate, Coordinates is the Y coordinate, and Coordinates is the Z coordinate.|
|Dim||INVALID||The space dimensionality of this class, determined by the number of coordinates in the List of Coordinates.|
ENTITY IfcCartesianPoint SUBTYPE OF (IfcPoint); Coordinates : LIST [1:3] OF IfcLengthMeasure; DERIVE Dim : IfcDimensionCount := HIINDEX(Coordinates); WHERE CP2Dor3D : HIINDEX(Coordinates) >= 2; END_ENTITY;