Industry Foundation Classes (IFC) Feature Representation
This section describes the features that are output from the IFC reader.
Quick Links
Coordinate System |
---|
Attributes |
---|
Special Feature Types |
---|
Coordinate System to Read
Esri *.prj and *.wld/wld3 Files
FME will search the folder of the dataset for a file with the same name as your dataset but with a projection file (.prj) extension. If it cannot find a file with that name, it will then look for the file esri_cad.prj within the dataset folder. If either of those files exists, FME will use the coordinate system information contained within to geolocate the IFC file.
If a .prj file is found, FME will also search the folder of the dataset for a file with the same name as your dataset, but with a world file extension (.wld or .wld3). If it cannot find a file with that name, it will then look for the file esri_cad.wld/esri_cad.wld3 within the dataset folder. If either of those files exists, FME will use the information in the file to translate the coordinates of the features in the dataset to their new geospatial coordinates.
If no .wld/.wld3 file is found, the translation will continue using the georeferencing information found in the .prj file, while reading coordinates in the coordinate system defined by the IFC file’s Survey Point. The reader will also use the file’s defined Project Units.
If the files cannot be found, then the translation will continue, using the coordinate information found in the dataset, without performing any additional transformation.
For more information on creating .prj and .wld/.wld3 files in ArcGIS Pro, please refer to the ArcGIS help page: Geospatial position of CAD and BIM data.
Native IFC Georeferenced Coordinate System
If FME does not find an Esri .prj file,it will instead look for georeferenced coordinate system information on the IfcMapConversion and IfcProjectedCRS elements in the IFC dataset. In order for the dataset to be properly georeferenced, the IFC file needs to reference a valid coordinate system with a correctly specified IfcMapConversion.
If FME finds georeferencing data in the IFC dataset, it will set the coordinate system name to the coordinate system it finds in the dataset and will geolocate features using the transformation specified by the IfcMapConversion.
Attributes
Common Attributes
Attribute/Trait Name |
Contents |
---|---|
ifc_name |
The name of the instance the feature represents. |
ifc_global_id |
The global ID of the instance the feature represents. |
ifc_parent_id |
The hierarchical parent global ID of the instance the feature represents. |
ifc_element_type |
The IFC element type IfcElementType. |
ifc_description |
The description of the instance the feature represents. |
ifc_element_id |
The element ID (AKA STEP instance name) of the instance the feature represents. |
Common Attributes for Geometric Elements
FME will read the following attributes on features representing geometric elements:
Attribute/Trait Name |
Contents |
---|---|
ifc_context_identifier |
The context identifier for the instance this feature represents. |
ifc_context_type |
The context type for the instance this feature represents. |
ifc_representation_identifier |
The representation identifier for the instance this feature represents. |
ifc_representation_type |
The representation type for the instance this feature represents. |
Attributes for Texture Information
FME will read the following attributes if the geometry contains a texture:
Attribute/Trait Name |
Texture Type |
Contents |
---|---|---|
ifc_texture_type |
– |
The type of texture on the geometry. Types include IfcImageTexture, IfcBlobTexture, and IfcPixelTexture. |
ifc_texture_urlreference |
IfcImageTexture |
The filename or url of the image. |
ifc_texture_rasterformat |
IfcBlobTexture |
Indicates the format (such as “PNG”) of the embedded raster. |
ifc_texture_rastercode |
IfcBlobTexture |
This attribute will contain the binary blob representing the raster. |
ifc_texture_width |
IfcPixelTexture |
This attribute defines the width of the raster. |
ifc_texture_height |
IfcPixelTexture |
This attribute defines the height of the raster. |
ifc_texture_colourcomponents |
IfcPixelTexture |
This attribute defines the number of components within each pixel. |
ifc_texture_pixel |
IfcPixelTexture |
This attribute defines the binary blob of the embedded raster. |
Special Feature Types
Non Geometric Feature Types
The following feature types are always read without geometry, but have useful attributes:
Project
The Project feature type reads the single IfcProject element in the dataset. It has the following unique attributes:
Attribute/Trait Name |
Contents |
---|---|
ifc_longname |
The long name of the project. |
ifc_phase |
The phase of the project. |
ifc_schema |
The schema of the project. |
Additionally, some Ifc project units of type IFCSIUNIT are read and stored as attributes on this feature. These are:
Unit |
---|
ifc_project_currency |
ifc_project_area_unit |
ifc_project_length_unit |
ifc_project_mass_unit |
ifc_project_time_unit |
ifc_project_volume_unit |
OwnerHistory
The OwnerHistory feature type reads the single IfcOwnerHistory element in the dataset. It has the following unique attributes:
Attribute/Trait Name |
Contents |
---|---|
ifc_state |
The state of the dataset. |
ifc_last_modified_date |
The last modified date of the project. |
ifc_creation_date |
The creation date of the project. |
ifc_change_action |
The value of the IfcChangeActionEnum for the project. |
PresentationLayerAssignment
The PresentationLayerAssignment feature type reads one feature for each PresentationLayerAssignment element in the dataset. It has the following unique attributes:
Attribute/Trait Name |
Contents |
---|---|
ifc_assigned_items{} |
Each entry in this list attribute holds the ID of an element assigned to the IfcPresentationLayer represented by this feature. |
Group
The Group feature type reads one feature for each group in the dataset. It has the following unique attributes:
Attribute/Trait Name |
Contents |
---|---|
ifc_group_member{} |
A list attribute that contains one entry with the ID of each member in the group. |