Class Ifc4::IfcHalfSpaceSolid¶
Defined in File Ifc4.h
Nested Relationships¶
This class is a nested type of Struct Ifc4.
Inheritance Relationships¶
Base Type¶
public Ifc4::IfcGeometricRepresentationItem
(Class Ifc4::IfcGeometricRepresentationItem)
Derived Types¶
public Ifc4::IfcBoxedHalfSpace
(Class Ifc4::IfcBoxedHalfSpace)public Ifc4::IfcPolygonalBoundedHalfSpace
(Class Ifc4::IfcPolygonalBoundedHalfSpace)
Class Documentation¶

class
Ifc4
::
IfcHalfSpaceSolid
: public Ifc4::IfcGeometricRepresentationItem¶ Definition from ISO/CD 1030342:1992: A half space solid is defined by the half space which is the regular subset of the domain which lies on one side of an unbounded surface. The side of the surface which is in the half space is determined by the surface normal and the agreement flag. If the agreement flag is TRUE, then the subset is the one the normal points away from. If the agreement flag is FALSE, then the subset is the one the normal points into. 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.
NOTE A half space is not a subtype of solid model (IfcSolidModel), half space solids are only useful as operands in Boolean expressions.
NOTE Corresponding STEP entity: half_space_solid. Please refer to ISO/IS 1030342:1994, p. 185 for the final definition of the formal standard. The derived attribute Dim has been added at this level and was therefore demoted from the geometric_representation_item.
HISTORY New class in IFC Release 1.5
Informal propositions:
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).
Figure 258 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.
Figure 258 — Half space solid geometry
Subclassed by Ifc4::IfcBoxedHalfSpace, Ifc4::IfcPolygonalBoundedHalfSpace
Public Types

typedef IfcTemplatedEntityList<IfcHalfSpaceSolid>
list
¶
Public Functions

::Ifc4::IfcSurface *
BaseSurface
() const¶ Surface defining side of half space.

void
setBaseSurface
(::Ifc4::IfcSurface *v)¶

bool
AgreementFlag
() const¶ The agreement flag is TRUE if the normal to the BaseSurface points away from the material of the IfcHalfSpaceSolid. Otherwise it is FALSE.

void
setAgreementFlag
(bool v)¶

IfcHalfSpaceSolid
(IfcEntityInstanceData *e)¶

IfcHalfSpaceSolid
(::Ifc4::IfcSurface *v1_BaseSurface, bool v2_AgreementFlag)¶

typedef IfcTemplatedEntityList<IfcHalfSpaceSolid>