IFC (IFC4X3_ADD2) under development IfcBoxedHalfSpace Semantic definition

The IfcBoxedHalfSpace is used (as its supertype IfcHalfSpaceSolid) only within Boolean operations. It divides the domain into exactly two subsets, where the domain in question is that of the attribute Enclosure.

The purpose of the attribute Enclosure is to provide a search box for the other operand in the Boolean operation. It shall be sufficiently large to fully enclose the resulting solid after the Boolean operation with the half space. It however does not alter the final result. The result of the Boolean operation would be the same, as if executed by the supertype IfcHalfSpaceSolid. See Figure below.

correct use of enclosure
Figure — Boxed half space operands

The IfcBoundingBox that provides the enclosure is given for the convenience of the receiving application to enable the use of size box comparison for efficiency (for example, to check first whether size boxes intersect, if not no calculations has to be done to check whether the solids of the entities intersect).

boxed half space
Figure — Boxed half space geometry

The Enclosure therefore helps to prevent dealing with infinite-size related issues. The enclosure box is positioned within the object coordinate system, established by the ObjectPlacement of the element represented (for example, by IfcLocalPlacement). Figure shows the Enclosure box being sufficiently large to fully enclose the Boolean result. Entity inheritance Attributes

# Attribute Type Description
IfcRepresentationItem (2)
LayerAssignment SET [0:1] OF IfcPresentationLayerAssignment FOR AssignedItems

Assignment of the representation item to a single or multiple layer(s). The LayerAssignments can override a LayerAssignments of the IfcRepresentation it is used within the list of Items.

StyledByItem SET [0:1] OF IfcStyledItem FOR Item

Reference to the IfcStyledItem that provides presentation information to the representation, e.g. a curve style, including colour and thickness to a geometric curve.

IfcHalfSpaceSolid (3)
1 BaseSurface IfcSurface

Surface defining side of half space.

2 AgreementFlag IfcBoolean

The agreement flag is TRUE if the normal to the BaseSurface points away from the material of the IfcHalfSpaceSolid. Otherwise it is FALSE.

* Dim IfcDimensionCount

This attribute is formally derived.


The space dimensionality of this class, it is always 3

Click to show 5 hidden inherited attributes Click to hide 5 inherited attributes
IfcBoxedHalfSpace (1)
3 Enclosure IfcBoundingBox

The box which bounds the resulting solid of the Boolean operation involving the half space solid for computational purposes only.

Table Formal propositions

Name Description

The BaseSurface defining the half space shall not be a bounded surface.

Table Formal representation

ENTITY IfcBoxedHalfSpace
 SUBTYPE OF (IfcHalfSpaceSolid);
	Enclosure : IfcBoundingBox;
	UnboundedSurface : NOT ('IFC4X3_DEV_d543ff3.IFCCURVEBOUNDEDPLANE' IN TYPEOF(SELF\IfcHalfSpaceSolid.BaseSurface));
END_ENTITY; References

Edit on Github

Is this page difficult to understand? Let us know! Changelog IFC4

  • where rule, UnboundedSurface
  • where rule, WR1