IfcBoxedHalfSpace

Natural language names
Eingerahmter Halbraum
Boxed Half Space
Change log
ItemSPFXMLChangeDescription
IFC4 Addendum 1
    IfcBoxedHalfSpace
      AgreementFlagMODIFIEDType changed from BOOLEAN to IfcBoolean.
Semantic definitions at the entity
Entity 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 328 below.

correct use of enclosure

Figure 328 — 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 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 329 shows the Enclosure box being sufficiently large to fully enclose the Boolean result.

Figure 329 — Boxed half space geometry

 

 

NOTE  Definition according to ISO/CD 10303-42:1992
This entity is a subtype of the half space solid which is trimmed by a surrounding rectangular box. The box has its edges parallel to the coordinate axes of the geometric coordinate system.
The purpose of the box is to facilitate CSG computations by producing a solid of finite size.
NOTE  Entity adapted from boxed_half_space defined in ISO 10303-42.
HISTORY  New entity in IFC1.5.1
IFC4 CHANGE  Usage correct, position coordinate system for Enclosure is the object coordinate system.
Attribute definitions
#AttributeTypeCardinalityDescription G
3EnclosureIfcBoundingBox The box which bounds the resulting solid of the Boolean operation involving the half space solid for computational purposes only. X
Formal Propositions
RuleDescription
UnboundedSurfaceThe BaseSurface defining the half space shall not be a bounded surface.
Inherited definitions from supertypes
Entity inheritance IfcHalfSpaceSolid IfcGeometricRepresentationItem IfcRepresentationItem
Attribute inheritance
#AttributeTypeCardinalityDescriptionG
IfcRepresentationItem
LayerAssignmentIfcPresentationLayerAssignment
@AssignedItems
S[0:1]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.
IFC2x3 CHANGE  The inverse attribute LayerAssignments has been added.
IFC4 CHANGE  The inverse attribute LayerAssignment has been restricted to max 1. Upward compatibility for file based exchange is guaranteed.
X
StyledByItemIfcStyledItem
@Item
S[0:1]Reference to the IfcStyledItem that provides presentation information to the representation, e.g. a curve style, including colour and thickness to a geometric curve.
IFC2x3 CHANGE  The inverse attribute StyledByItem has been added.
X
IfcGeometricRepresentationItem
IfcHalfSpaceSolid
1BaseSurfaceIfcSurface Surface defining side of half space.X
2AgreementFlagIfcBoolean The agreement flag is TRUE if the normal to the BaseSurface points away from the material of the IfcHalfSpaceSolid. Otherwise it is FALSE.X
Dim
:=3
IfcDimensionCountThe space dimensionality of this class, it is always 3 X
IfcBoxedHalfSpace
3EnclosureIfcBoundingBox The box which bounds the resulting solid of the Boolean operation involving the half space solid for computational purposes only. X
Formal representations
XML Specification
 <xs:element name="IfcBoxedHalfSpace" type="ifc:IfcBoxedHalfSpace" substitutionGroup="ifc:IfcHalfSpaceSolid" nillable="true"/>
 <xs:complexType name="IfcBoxedHalfSpace">
  <xs:complexContent>
   <xs:extension base="ifc:IfcHalfSpaceSolid">
    <xs:sequence>
     <xs:element name="Enclosure" type="ifc:IfcBoundingBox" nillable="true"/>
    </xs:sequence>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>
EXPRESS Specification
ENTITY IfcBoxedHalfSpace
 SUBTYPE OF (IfcHalfSpaceSolid);
  Enclosure : IfcBoundingBox;
 WHERE
  UnboundedSurface : NOT ('IFCGEOMETRYRESOURCE.IfcCurveBoundedPlane' IN TYPEOF(SELF\IfcHalfSpaceSolid.BaseSurface));
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

Link to this page  Link to this page