8.8.3.7 IfcBoxedHalfSpace
8.8.3.7.1 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 8.8.3.7.A below.
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).
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 8.8.3.7.B shows the Enclosure box being sufficiently large to fully enclose the Boolean result.
8.8.3.7.2 Entity inheritance
-
- IfcHalfSpaceSolid
- IfcAnnotationFillArea
- IfcBooleanResult
- IfcBoundingBox
- IfcCartesianPointList
- IfcCartesianTransformationOperator
- IfcCsgPrimitive3D
- IfcCurve
- IfcDirection
- IfcFaceBasedSurfaceModel
- IfcFillAreaStyleHatching
- IfcFillAreaStyleTiles
- IfcGeometricSet
- IfcLightSource
- IfcPlacement
- IfcPlanarExtent
- IfcPoint
- IfcSectionedSpine
- IfcSegment
- IfcShellBasedSurfaceModel
- IfcSolidModel
- IfcSurface
- IfcTessellatedItem
- IfcTextLiteral
- IfcVector
8.8.3.7.3 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. |
8.8.3.7.4 Formal propositions
Name | Description |
---|---|
UnboundedSurface |
The BaseSurface defining the half space shall not be a bounded surface. |
|
8.8.3.7.5 Formal representation
ENTITY IfcBoxedHalfSpace
SUBTYPE OF (IfcHalfSpaceSolid);
Enclosure : IfcBoundingBox;
WHERE
UnboundedSurface : NOT ('IFC4X3.IFCCURVEBOUNDEDPLANE' IN TYPEOF(SELF\IfcHalfSpaceSolid.BaseSurface));
END_ENTITY;