Personal tools
You are here: Home / Implementation / IFC2x3 impl guidance / IFC Impl Agreements / #CV-2x3-112


support for CSG geometry is required on import
based on
extended coordination view
24. Feb 2006
ISG meeting in Berlin
summary support for CSG geometry is required on import



CSG geometry is supported for import (with the exception of some object types).


update [06-07-2011]
Additional agreement decided in ISG certification teleconference

CSG support is allowed for export, and CSG support is demanded for import. The sending system shall provide an option to export the resulting Brep for backward compatibility (an export option to force the geometry to be Brep).


  • for the certification the export of Brep and the import of CSG is mandatory and is certified, the export of CSG is optional, if provided, it is certified;
  • the proposed development sequence should be to first have Brep export, and keep this option to support the demand for having an Brep export option;
  • current clipping difference operations shall not be replaced by difference operations against other solids (i.e. the use of clipping against a half space is the preferred operation when suitable).
  • the (mis)use of IfcOpeningElement for clippings and cut-outs (not being true openings or recesses with its semantic meaning) is not allowed.


update [06-02-2012]
Additional agreement decided during the IFC2x3 Coordination View V2.0 certification process

  • The items within the Items list of IfcShapeRepresentation (being an 'CSG' representation) shall be of type IfcBooleanResult. The Items list shall not include IfcCsgSolid, or IfcPrimitive3D.
  • Within an IfcBooleanResult an IfcHalfSpaceSolid shall only be used as the SecondOperand of an Operator=".DIFFERENCE." (and not for an Operator=".UNION." or ".INTERSECTION."). Therefore the subtype IfcBooleanClippingResult shall be used within the CSG tree. This is to avoid Boolean results of unlimited size.