Class Ifc4::IfcProjectedCRS

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4::IfcProjectedCRS : public Ifc4::IfcCoordinateReferenceSystem

Definition from OpenGIS® Abstract Specification, Topic 2: A 2D (or with vertical coordinate axis 3D) coordinate reference system used to approximate the shape of the earth on a planar surface, but in such a way that the distortion that is inherent to the approximation is carefully controlled and known. Distortion correction is commonly applied to calculated bearings and distances to produce values that are a close match to actual field values. IfcProjectedCRS is a coordinate reference system of the map to which the map translation of the local engineering coordinate system of the construction or facility engineering project relates. The MapProjection and MapZone attributes uniquely identify the projection to the underlying geographic coordinate reference system, provided that they are well-known in the receiving application. The projected coordinate reference system is assumed to be a 2D or 3D right-handed Cartesian coordinate system, the optional MapUnit attribute can be used determine the length unit used by the map.

HISTORY New entity in IFC2x4.

Public Types

typedef IfcTemplatedEntityList<IfcProjectedCRS> list

Public Functions

bool hasMapProjection() const

Whether the optional attribute MapProjection is defined for this IfcProjectedCRS.

std::string MapProjection() const

Name by which the map projection is identified.

UTM Gaus-Krueger

void setMapProjection(std::string v)
bool hasMapZone() const

Whether the optional attribute MapZone is defined for this IfcProjectedCRS.

std::string MapZone() const

Name by which the map zone, relating to the MapProjection, is identified. Examples are

for UTM, the zone number, like 32 for UTM32 for Gaus-Krueger, the zones of longitudinal width, like 3’

void setMapZone(std::string v)
bool hasMapUnit() const

Whether the optional attribute MapUnit is defined for this IfcProjectedCRS.

::Ifc4::IfcNamedUnit *MapUnit() const

Unit of the coordinate axes composing the map coordinate system. NOTE Only length measures are in scope and all two or three axes of the map coordinate system shall have the same length unit.

void setMapUnit(::Ifc4::IfcNamedUnit *v)
const IfcParse::entity &declaration() const
IfcProjectedCRS(IfcEntityInstanceData *e)
IfcProjectedCRS(std::string v1_Name, boost::optional<std::string> v2_Description, boost::optional<std::string> v3_GeodeticDatum, boost::optional<std::string> v4_VerticalDatum, boost::optional<std::string> v5_MapProjection, boost::optional<std::string> v6_MapZone, ::Ifc4::IfcNamedUnit *v7_MapUnit)

Public Static Functions

const IfcParse::entity &Class()