Solved

IFC to FileGeodatabase Multipart Feature Class

  • 27 November 2017
  • 7 replies
  • 64 views

Badge

I am looking to convert an IFC export from Revit to an ESRI FileGDB Multipart Featureclass and would eventually like to view in ArcGIS pro. Any help or start would be much appreciated, thanks!

Link to IFC: https://www.dropbox.com/sh/up76utq2soz6tjc/AADd-jppK5pJ6_q9Qtt6Jufwa?dl=0

icon

Best answer by daveatsafe 2 December 2017, 00:29

View original

7 replies

Userlevel 2
Badge +17

Hi @piercexc, IFC features have very complex structure. A feature can contain not only a solid or surface geometry but also point, line, polygon, or null (properties) and so on. It's hard to explain all here. This article would be a good start point to learn how you can translate IFC to GIS.

BIM Tutorial

I would provide a basic example. It seems that your IFC dataset contains only solid and line geometries. If you want to simply migrate the geometries into File Geodatabase feature classes, this workflow could be a possible way.

GeometryFilter Parameters

  • Homogenize Collections: Yes
  • Instantiate Geometry Instances: Yes

Note that this workflow ignores null and other type geometries, and also won't handle properties stored in objects, so it's not a generic way that can be applied to any scenario. It's just a starting point to learn how you can read IFC.

I was able to see the resulting dataset on ArcGIS Pro 3D mode.

However, the location and scale (units of distance) seem to be incorrect. You will have to set correct coordinate system to the dataset, if you need to display the result on a map.Hope this helps.
Badge

Hello @takashi thanks so much for this, has gotten me a bit farther along to getting this into ArcGIS pro. But I am still running into some issues I have not been able to figure it out and was wondering if you could help a bit more. I was able to split it up based on geometry type and successfully write to a FileGDB and have it draw in ArcGIS Pro but not with surfaces like yours. My layers are all lines and no surfaces like solid walls are showing correctly even though they are in the FileGDB. I have attached a workbench that I have been working on and was wondering if you could send me the one you built to create the 3D layer above? Thanks so much for your help

ifc-to-filegdb.fmw

Userlevel 2
Badge +17

Hello @takashi thanks so much for this, has gotten me a bit farther along to getting this into ArcGIS pro. But I am still running into some issues I have not been able to figure it out and was wondering if you could help a bit more. I was able to split it up based on geometry type and successfully write to a FileGDB and have it draw in ArcGIS Pro but not with surfaces like yours. My layers are all lines and no surfaces like solid walls are showing correctly even though they are in the FileGDB. I have attached a workbench that I have been working on and was wondering if you could send me the one you built to create the 3D layer above? Thanks so much for your help

ifc-to-filegdb.fmw

Possibly destination feature class setting in the writer feature type is wrong. An IFC object class can contain multiple geometry types, but a File Geodatabase feature class can contain only a single geometry type. I therefore defined the new attribute "_feature_class" as the destination class name so that the surface geometry features would be distinguished from the line geometry features, even if they belong to the same feature type in the IFC dataset.

 

 

Userlevel 2
Badge +17

Hi @piercexc,

The FME Revit reader can read IFC files as well, and its Data Views will automatically simplify the geometry and extract the property sets into GIS appropriate attributes for you.

I would recommend reading your dataset using the default Building Elements with Hierarchy view to start with. This will keep the solid geometry and discard the lines.

Badge

Hi @piercexc,

The FME Revit reader can read IFC files as well, and its Data Views will automatically simplify the geometry and extract the property sets into GIS appropriate attributes for you.

I would recommend reading your dataset using the default Building Elements with Hierarchy view to start with. This will keep the solid geometry and discard the lines.

@DaveAtSafe

 

 

Thanks for the insight, the Revit reader is pretty cool but I had no luck. I have tried a few things and it seems to be stuck with these issues where all the features are either lines or points. I have attached my workbench so far, its a bit of a mess with different tries. Any suggestions would be great. thanks

ifc-to-filegdb.fmw
Userlevel 2
Badge +17
@DaveAtSafe

 

 

Thanks for the insight, the Revit reader is pretty cool but I had no luck. I have tried a few things and it seems to be stuck with these issues where all the features are either lines or points. I have attached my workbench so far, its a bit of a mess with different tries. Any suggestions would be great. thanks

ifc-to-filegdb.fmw
Hi @piercexc,

 

Sorry, I should have taken a closer look at your workspace first. You are using the File Geodatabase API writer - this doesn't require ArcGIS to be installed, but it only handles point, line, polygon geometry. To write multi-patches to Geodatabase, you will need to use the File Geodatabase ArcObjects writer. This write requires ArcGIS to be installed and licensed on the same computer as FME. Since, you have ArcGIS Pro, which is 64 bit, please use the 64 bit version of FME to do the conversion.

 

I am attaching a Revit to ArcObjects Geodatabase sample workspace for you. I had to use a BulkAttributeRenamer to rename some the the attributes to make them ArcGIS compatible, and so was not able to use Dynamic mode on the writer.

 

revittogdb.zip

 

Badge

Hi @piercexc,

The FME Revit reader can read IFC files as well, and its Data Views will automatically simplify the geometry and extract the property sets into GIS appropriate attributes for you.

I would recommend reading your dataset using the default Building Elements with Hierarchy view to start with. This will keep the solid geometry and discard the lines.

@DaveAtSafe

 

 

Thanks so much I knew I was missing something small, thanks so much. Looks good now.

Reply