Class Ifc4::IfcCoordinateReferenceSystem

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Derived Type

Class Documentation

class Ifc4::IfcCoordinateReferenceSystem : public IfcUtil::IfcBaseEntity

Definition from OpenGIS® Abstract Specification, Topic 2: A coordinate reference system is a coordinate system which is related to the real world by a datum. The coordinate system is composed of a set of coordinate axes with specified units of measure. The datum specifies the relationship of a coordinate system to the earth. The resulting combination of coordinate system and datum is a coordinate reference system.

IfcCoordinateReferenceSystem is a definition of a coordinate reference system by means of qualified identifiers only. The interpretation of the identifier is expected to be well-known to the receiving software.

NOTE One widely-used, publicly-available authority is the European Petroleum Survey Group (EPSG), and use of this authority is currently specified in several OGC Implementation Specifications. Software used to transport IFC engineering models into GIS applications (and vice versa) is expected to have knowledge about the OGC Implementation Specifications.

HISTORY New entity in IFC2x4.

Subclassed by Ifc4::IfcProjectedCRS

Public Functions

std::string Name() const

Name by which the coordinate reference system is identified. Note The name shall be taken from the list recognized by the European Petroleum Survey Group EPSG.

void setName(std::string v)
bool hasDescription() const

Whether the optional attribute Description is defined for this IfcCoordinateReferenceSystem.

std::string Description() const

Informal description of this coordinate reference system.

void setDescription(std::string v)
bool hasGeodeticDatum() const

Whether the optional attribute GeodeticDatum is defined for this IfcCoordinateReferenceSystem.

std::string GeodeticDatum() const

Name by which this datum is identified. The geodetic datum is associated with the coordinate reference system and indicates the shape and size of the rotation ellipsoid and this ellipsoid’s connection and orientation to the actual globe/earth. Examples for geodetic datums include:

ED50 EUREF89 WSG84

void setGeodeticDatum(std::string v)
bool hasVerticalDatum() const

Whether the optional attribute VerticalDatum is defined for this IfcCoordinateReferenceSystem.

std::string VerticalDatum() const

Name by which the vertical datum is identified. The vertical datum is associated with the height axis of the coordinate reference system and indicates the reference plane and fundamental point defining the origin of a height system. Examples for vertical datums include:

height above mean sea level at Dover in 1952 other sea levels

void setVerticalDatum(std::string v)
IfcTemplatedEntityList<IfcCoordinateOperation>::ptr HasCoordinateOperation() const
const IfcParse::entity &declaration() const
IfcCoordinateReferenceSystem(IfcEntityInstanceData *e)
IfcCoordinateReferenceSystem(std::string v1_Name, boost::optional<std::string> v2_Description, boost::optional<std::string> v3_GeodeticDatum, boost::optional<std::string> v4_VerticalDatum)

Public Static Functions

const IfcParse::entity &Class()