A half space solid divides the domain into two by a base surface. Normally, the base surface is a plane and divides the infinitive space into two and indicates the side of the half-space by agreeing or disagreeing to the normal of the plane.
Figure 188.8.131.52.A illustrates the definition of the IfcHalfSpaceSolid within a given coordinate system. The base surface is given by an unbounded plane, the red boundary is shown for visualization purposes only.
For a valid half space solid the surface shall divide the domain into exactly two subsets. Also, within the domain the surface shall be manifold and all surface normals shall point into the same subset.
- The base surface shall divide the domain into exactly two subsets. If the half space solid is of subtype boxed half space (IfcBoxedHalfSpace), the domain in question is that of the attribute enclosure. In all other cases the domain is all of space and the base surface shall be unbounded.
- The base surface shall be an unbounded surface (subtype of IfcElementarySurface).
|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.
|Click to show 2 hidden inherited attributes Click to hide 2 inherited attributes|
Surface defining side of half space.
The agreement flag is TRUE if the normal to the BaseSurface points away from the material of the IfcHalfSpaceSolid. Otherwise it is FALSE.
This attribute is formally derived.
The space dimensionality of this class, it is always 3
ENTITY IfcHalfSpaceSolid SUPERTYPE OF (ONEOF (IfcBoxedHalfSpace ,IfcPolygonalBoundedHalfSpace)) SUBTYPE OF (IfcGeometricRepresentationItem); BaseSurface : IfcSurface; AgreementFlag : IfcBoolean; DERIVE Dim : IfcDimensionCount := 3; END_ENTITY;