Skip to main content

Hello everyone
I am currently working on a project where i have to create an ifc file from a CAD floor plan.in fact in order to do that i have some issues to solve, one of them is that i have to create gaps in walls for doors and windows, for that i thought of extruding the walls and doors twice using two extruders  to create solids and use CSGbuilder to create the gaps but it rejects them , so i thought of extruding the walls and doors only once to create surfaces and use the clipper , however the doors surfaces happen to fall next to the walls , and not precisely on them which lets the clipper fail at calculating the intersection , so i am wondering if there is a way to somehow project the surfaces (for example the doors on the walls) before using the clipper or maybe you have an entirely different idea for handling this problem
Thank you in advance.​​​

Hi @abdelhaq,

You don’t need to create the gaps for the Windows and Doors in the Wall geometry. Instead, you need to create Opening features to represent those gaps. When setting the hierarchy linkages, The Doors and Windows are children of the Openings, which are in turn children of the appropriate Walls.

The Door and Window features ifc_parent_id should point to the appropriate Opening GlobalId, while the Opening ifc_parent_id should point to the containing Wall GlobalId. The Wall ifc_parent_id should point to the BuildingStorey GlobalId.

This still leaves the problem of creating the Opening geometries, which are essentially the same as the clip boundaries you are trying to create. You want a simple extruded rectangle the thickness (or slightly larger) of the Wall. The best way to do this would depend on the geometry of the Doors and Windows in the CAD file. Would you mind sharing some screen shots of the CAD data, or maybe even a sample file?


Reply