Class Ifc4x1::IfcGeographicElement

Nested Relationships

This class is a nested type of Struct Ifc4x1.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4x1::IfcGeographicElement : public Ifc4x1::IfcElement

Definition from IAI: An IfcGeographicElement is a generalization of all elements within a geographical landscape. It includes occurrences of typical geographical element, often referred to as features, such as roads, zones, trees, etc. Common type information behind several occurrences of IfcGeographicElement is provided by the IfcGeographicElementType. HISTORY New entity in Release IFC2x4. Type Use Definition An IfcGeographicElement defines the occuurence of any element within a geographic landscape, common information about geographic elements is handled by IfcGeographicElementType. The IfcGeographicElementType (if present) may establish the commontype name, usage (or predefined) type, common set of properties and common shape representations (using IfcRepresentationMap). The IfcGeographicElementType is attached using the IfcRelDefinedByType.RelatingType objectified relationship and is accessible by the inverse IsDefinedBy attribute. Classification Use Definition An IfcGeographicElement might be further qualified by referencing a feature catalog as a particular classification. The feature classification is assigned using the inverse relationship HasAssociations pointing to IfcClassificationReference. The attributes should have the following meaning:

Catalog : IfcClassification.Name Identity: IfcClassificationReference.ItemReference ElementName: IfcClassificationReference.Name if there is a differentiation between an main element and a sub element without a unique notation facet, then the main element and sub element(s) can be established by using the subtype

IfcClassificationReferenceWithFacets.ItemReferenceFacets

Containment Use Definition The IfcGeographicElement, as any subtype of IfcElement, may participate in two different containment relationships. The first (and in most implementation scenarios mandatory) relationship is the hierachical spatial containment, the second (optional) relationship is the aggregation within anelement assembly.

The IfcGeographicElement is places within the project spatial hierarchy using the objectified relationship IfcRelContainedInSpatialStructure, refering to it by its inverse attribute SELF\IfcElement.ContainedInStructure. Subtypes ofIfcSpatialStructureElement are valid spatial containers, with IfcSite being the default container. The IfcGeographicElement may be aggregated into an element assembly using the objectified relationship IfcRelAggregates, refering to it by its inverse attribute SELF\IfcObjectDefinition.Decomposes. Any subtype of IfcElement can be an element assembly, with IfcElementAssembly as a special focus subtype. In this case it should not be additionally contained in the project spatial hierarchy, i.e.SELF\IfcElement.ContainedInStructure should be NIL.

Geometry Use Definitions The geometric representation of IfcGeographicElement is given by the IfcProductDefinitionShape, allowing multiple geometric representation. Local Placement The local placement for IfcGeographicElement is defined in its supertype IfcProduct. It is defined by the IfcLocalPlacement, which defines the local coordinate system that is referenced by all geometric representations.

The PlacementRelTo relationship of IfcLocalPlacement shall point (if given) to the local placement of the same IfcSpatialStructureElement , which is used in the ContainedInStructure inverse attribute, or to a spatial structure element at a higher level, referenced by that. If the relative placement is not used, the absolute placement is defined within the world coordinate system.

Geometric Representation GeometricCurveSet and GeometricSet Representation The standard representation of IfcGeographicElement is defined using ‘GeometricCurveSet’ or, when including surfaces, the ‘GeometricSet’ geometry. This also supports a 2D representation of IfcGeographicElement. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

RepresentationIdentifier : ‘FootPrint’ for 2D representation RepresentationType :’GeometricCurveSet’ or’GeometricSet’

Annotation2D Representation Additional annotation objects, like text or hatching, and style information to the 2D representations, may be exchanged using the ‘Annotation2D’ representation. Style information is assigned to the geometric representation items within the set of Items at IfcShapeRepresentation using the inverse StyledByItem relationship. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

RepresentationIdentifier : ‘FootPrint’ for 2D representation RepresentationType :’Annotation2D’

SurfaceModel and Brep Representation For full 3D representations, the use of ‘SurfaceModel’ and ‘Brep’ geometry is supported. This supports a 3D representation, including support for 3D digital terrain models. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

RepresentationIdentifier : ‘Body’ for 3D representation RepresentationType :’SurfaceModel’ or’Brep’

MappedRepresentation Representation When using the IfcGeographicElement in conjunction with the IfcGeographicElementType having RepresentationMaps defined, the geometric representation ofIfcGeographicElementshall be based on ‘MappedRepresentation’, referencing the IfcRepresentationMap given at the type object. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

RepresentationIdentifier : ‘FootPrint’ for 2D representation, ‘Body’ for 3D representation RepresentationType :’MappedRepresentation’

Public Types

typedef IfcTemplatedEntityList<IfcGeographicElement> list

Public Functions

bool hasPredefinedType() const

Whether the optional attribute PredefinedType is defined for this IfcGeographicElement.

::Ifc4x1::IfcGeographicElementTypeEnum::Value PredefinedType() const

Predefined generic types for a geographic element that are specified in an enumeration. There might be property sets defined specifically for each predefined type.

void setPredefinedType(::Ifc4x1::IfcGeographicElementTypeEnum::Value v)
const IfcParse::entity &declaration() const
IfcGeographicElement(IfcEntityInstanceData *e)
IfcGeographicElement(std::string v1_GlobalId, ::Ifc4x1::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, boost::optional<std::string> v5_ObjectType, ::Ifc4x1::IfcObjectPlacement *v6_ObjectPlacement, ::Ifc4x1::IfcProductRepresentation *v7_Representation, boost::optional<std::string> v8_Tag, boost::optional<::Ifc4x1::IfcGeographicElementTypeEnum::Value> v9_PredefinedType)

Public Static Functions

const IfcParse::entity &Class()