buildingSMART Forums

Is there a way to extract the vertex of ... say a rectangle object type from an IFC file?

Is there a way to do this from an IFC file and an external program or need to go to the source of the IFC file say…Revit?

As shown in the other thread, there are a few ways to represent a rectangle. Some of these may use the concept of an IfcFacetedBrep, which has “vertices”, but some may not. If your IFC program defines a rectangle using a geometric representation which uses a rectangular profile, then it will not be possible to extract a single “vertex”, as a single “vertex” doesn’t exist. However, you can extract the original profile and do a bit of geometric math to figure out the coordinates of that vertex if you’d like.

If, however, the export uses a geometric representation which does use vertices, such as in Blender, then it is quite easy to extract the vertex. IfcOpenShell can help you do this.

I have written an article which guides you on how to do this - at the bottom I give a brief introduction on how to interrogate geometry:

https://thinkmoult.com/using-ifcopenshell-parse-ifc-files-python.html

Out of curiosity, what is your objective in doing this?