Wrong shapes when import ifc file in BlenderBim
Hi all,
I'm testing BlenderBim 221105 with Blender 3.3.2 in windows 10 and have some issues when importing an ifc file. Some objects are bad rendered and some others are placed in wrong position (for example, in blender, cilindrical bridge bored piles have rectangular shape, central pile show bad shape, etc).
Testing the same file with other viewer (Bimvision) show good results. I tested OpenIfcViewer too and has some issue with bored pile shape but all others elements seem right.
Looking the *.ifc file, seem generated with ODA SDAI 22.12 and exported from Revit 2023
Has someone the same issue?
Comments
Can you share your IFC? You can send it to [email protected] if private - it may be a bug in IfcOpenShell, or an invalid or poorly described model, but I'll need to file to investigate further.
I believe the problem here lies with Revit. Revit is incorrectly placing the object placements (i.e. local origin / insertion points / etc) of each object incredibly far away (4 million meters away) from the local geometry of the object. See https://blenderbim.org/docs/users/georeferencing.html#incorrect-coordinate-use for an explanation, especially the warning in that section of why you might think things are correct in other viewers, when they are actually not correct.
The model seem in coordinates ETRS / UTM Zone 31 (EPSG:25831) and when I import the file, I use "Enable advanced mode" with coordinates 431000, 4602020, 0 to get objects near origin. The import is good for some objects and wrong for others, not only for placement (shape are deformed).
Global placement seems good. I imported other mesh with digital terrain model using BlenderGis and position for the model is coherent.
Yes, because your model is actually mixing small numbers and large numbers. For example, the placement of one of the central cylinder piles is (437299, 4602126, 104), this is a large number, which is fine, except that the cylinder within has a centroid of (-6124,48,-25) (i.e. displaced another 6km).
So if you look at it from a pure geometry standpoint, yes the geometry seems to have consistently large coordinates. However, other viewers like OpenIfcViewer / BIMVision will not show you the object placement, which is 6km away from the column. The BlenderBIM Add-on is a full native IFC authoring platform, and so these object placements have a big impact.
You can override the the parameters that detect local and map coordinates, for example you have already changed the false origin to
431000,4602020,0
in the advanced mode. You can also change the Distance Limit to be larger than 1000m, to something like 10000 (meters) which will therefore accommodate your 6km column displacement. If you make that change, you will see that the columns will load correctly.However it doesn't change the fact that: