Class Ifc4x2::IfcBoundingBox

Nested Relationships

This class is a nested type of Struct Ifc4x2.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4x2::IfcBoundingBox : public Ifc4x2::IfcGeometricRepresentationItem

Definition from ISO/CD 10303-42:1992: A box domain is an orthogonal box parallel to the axes of the geometric coordinate system which may be used to limit the domain of a half space solid. A box domain is specified by the coordinates of the bottom left corner, and the lengths of the sides measured in the directions of the coordinate axes.

Every semantic object having a physical extent might have a minimum default representation of a bounding box. The bounding box is therefore also used as minimal geometric representation for any geometrically represented object. Therefore the IfcBoundingBox is subtyped from IfcGeometricRepresentationItem.

NOTE Corresponding ISO 10303-42 entity: box_domain, please refer to ISO/IS 10303-42:1994, p. 186 for the final definition of the formal standard. In IFC the bounding box can also be used outside of the context of an IfcBoxedHalfSpace.

HISTORY New entity in IFC Release 1.0.

As shown in Figure 252, the IfcBoundingBox is defined with its own location which can be used to place the IfcBoundingBox relative to the geometric coordinate system. The IfcBoundingBox is defined by the lower left corner (Corner) and the upper right corner (XDim, YDim, ZDim measured within the parent co-ordinate system).

Figure 252 — Bounding box

Public Types

typedef IfcTemplatedEntityList<IfcBoundingBox> list

Public Functions

::Ifc4x2::IfcCartesianPoint *Corner() const

Location of the bottom left corner (having the minimum values).

void setCorner(::Ifc4x2::IfcCartesianPoint *v)
double XDim() const

Length attribute (measured along the edge parallel to the X Axis)

void setXDim(double v)
double YDim() const

Width attribute (measured along the edge parallel to the Y Axis)

void setYDim(double v)
double ZDim() const

Height attribute (measured along the edge parallel to the Z Axis).

void setZDim(double v)
const IfcParse::entity &declaration() const
IfcBoundingBox(IfcEntityInstanceData *e)
IfcBoundingBox(::Ifc4x2::IfcCartesianPoint *v1_Corner, double v2_XDim, double v3_YDim, double v4_ZDim)

Public Static Functions

const IfcParse::entity &Class()