Hi @luhu,
Currently FME can only write the RefLatitude, RefLongitude and RefElevation to the IfcSite feature to establish the georeferencing.
Please send all of your data through a CommonLocalReprojector transformer, with Vertical Handling set to 'Heights are Relative...'. This will create a local Azimuthal Equal Area coordinate system centered on your data, and reproject your data into this coordinate system.
Next, use a CoordinateSystemExtractor to extract the coordinate system name into an attribute.
Use a StringSearcher with the following settings to extract the ref lat and long from the coordinate system name:
- Contains Regular Expression: _([-]*[\\d]+[\\.][\\d]*)
- Advanced - Subexpression Matches List Name: _matches
Finally, use a AttributeCreator to copy the matches into the appropriate attribute names:
- RefLatitude <- _matches{1}.part
- RefLongitude <- _matches{0}.part
Thanks for the answer.
Are there any efforts to integrate IFC4 georeferencing ("IfcProjectedCRS" and "IfcMapConversion") into FME?
Thanks for the answer.
Are there any efforts to integrate IFC4 georeferencing ("IfcProjectedCRS" and "IfcMapConversion") into FME?
We are working towards full coordinate system support in IFC4, but are not there yet.
Hi, in my case several offsets are defined in some IFC propeerties as:
IFCMAPCONVERSION and IFCCARTESIANPOINT but i cannot see those properties defined in the IFC reader (FME 2020.2). To get them i neeed to read the whole IFC file as text ansd extract the properties i need but the properties are defined recursively: IFCMAPCONVERSION(#84,#100,130950.,1173750.,0.,1.,0.,1.);
So for example to get all the values in the IFCMAPCONVERSION properties should into the whole IFC as text and look for #84 and #100:
#84= IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,0.01,#81,#82);
#81= IFCAXIS2PLACEMENT3D(#79,#77,#73);
#73= IFCDIRECTION((1.,0.,0.));
#77= IFCDIRECTION((0.,0.,1.));
#79= IFCCARTESIANPOINT((0.,0.,0.));
#82= IFCDIRECTION((0.,1.));
Do you have an easier alternative to read through all the properties in the IFC file? I have been thinking about using python caller and the IFCShell python module but as long a IFC reader is in place in FME, I think this should be upgraded.
This paper of BuildingSMART Australasia explains georeferencing in IFC using IfcMapConversion and IfcProjectedCRS.
https://www.buildingsmart.org/wp-content/uploads/2020/02/User-Guide-for-Geo-referencing-in-IFC-v2.0.pdf
Please upvote this idea for better support for this in FME:
https://community.safe.com/s/idea/0874Q000000LP2jQAG/detail
Hi @stijngoedertier ,
Do you know any tools which are currently using these properties when generating IFC filed (e.g., Revit etc)
@virtualcitymatt, yes IfcMapConversion information can now be exported from Archicad and Revit (with IFC add-in). I am not sure about other tools like Tekla, Vectorworks, Allplan, etc.
See this wiki with detailed explanations:
https://wiki.osarch.org/index.php?title=ArchiCAD_IFC_geolocation
https://wiki.osarch.org/index.php?title=Revit_IFC_geolocation
We are working towards full coordinate system support in IFC4, but are not there yet.
what is the latest on this?
There is now a custom transformer in the FME Hub that can read IfcMapConversion information from an IFC file and apply the coordinate transformation. See:
https://hub.safe.com/publishers/stijngoedertier/transformers/ifcmapconversionreader