Class Ifc4::IfcColumnStandardCase

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4::IfcColumnStandardCase : public Ifc4::IfcColumn

The standard column, IfcColumnStandardCase, defines a column with certain constraints for the provision of material usage, parameters and with certain constraints for the geometric representation. The IfcColumnStandardCase handles all cases of columns, that:

have a reference to the IfcMaterialProfileSetUsage defining the material profile association of the column with the cardinal point of its insertion relative to the local placement. are based on a sweep of a planar profile, or set of profiles, as defined by the IfcMaterialProfileSet have an ‘Axis’ shape representation with constraints provided below in the geometry use definition have a ‘Body’ shape representation with constraints provided below in the geometry use definition have a start profile, or set of profiles, that is swept along the directrix and might be changed uniformly by a taper definition are consistent in using the correct cardinal point offset of the profile as compared to the ‘Axis’ and ‘Body’ shape representation are extruded perpendicular to the profile definition plane

NOTE View definitions and implementer agreements may further constrain the applicable geometry types, e.g. by excluding tapering from an IfcBeamStandardCase implementation.

HISTORY New entity in IFC2x4.

Type Use Definition IfcColumn defines the occuurence of any column, common information about column types (or styles) is handled by IfcColumnType. The IfcColumnType (if present) may establish the commontype name, usage (or predefined) type, common material layer set, common set of properties and common shape representations (using IfcRepresentationMap). The IfcColumnType is attached using the IfcRelDefinedByType.RelatingType objectified relationship and is accessible by the inverse IsDefinedBy attribute. The IfcColumnStandardCase defines in addition that the IfcColumnType should have a unique IfcMaterialProfileSet, that is referenced by the IfcMaterialProfileSetUsage assigned to all occurrences of this column type.

Figure 84 illustrates assignment of IfcMaterialProfileSetUsage and IfcMaterialProfileSet to the IfcColumnStandardCase as the column occurrence and to the IfcColumnType. The same IfcMaterialProfileSet shall be shared by many occurrences of IfcMaterialProfileSetUsage. This relationship shall be consistent to the relationship between the IfcColumnType and the IfcColumnStandardCase.

Figure 84 — Column profile usage

Figure 85 illustrates cardinal point alignment. NOTE It has to be guaranteed that the use of IfcCardinalPointEnum is consistent to the placement of the extrusion body provided by IfcExtrudedAreaSolid.Position NOTE The cardinal points 7 (top left), and 6 (mid-depth right) are assigned according to the definition at IfcCardinalPointReference

Figure 85 — Column cardinal points

Figure 86 illustrates assignment of a composite profile by using IfcCompositeProfile for geometric representation and several IfcMaterialProfile’s within the IfcMaterialProfileSet. The number of IfcMaterialProfile’s within the IfcMaterialProfileSet is restricted to maximal 2 and requires the use of IfcExtrudedAreaSolidTapered, or IfcRevolvedAreaSolidTapered for the correct ‘Body’ shape representation.

Figure 86 — Column composite profiles

Material Use Definition The material of the IfcColumnStandardCase is defined by IfcMaterialProfileSetUsage and attached by the IfcRelAssociatesMaterial.RelatingMaterial. It is accessible by the inverse HasAssociations relationship. Composite profile columns can be represented by refering to several IfcMaterialProfile’s within the IfcMaterialProfileSet that is referenced from the IfcMaterialProfileSetUsage. Material information can also be given at the IfcColumnType, defining the common attribute data for all occurrences of the same type. It is then accessible by the inverse IsDefinedBy relationship pointing to IfcColumnType.HasAssociations and via IfcRelAssociatesMaterial.RelatingMaterial. See Type Use Definition for additional agreements for standard columns. Property Set Use Definition: The property sets relating to the IfcColumnStandardCase are defined at the supertype IfcColumn. Quantity Use Definition The quantities relating to the IfcColumnStandardCase are defined at the supertype IfcColumn. Containment Use Definition The containment use definitions relating to the IfcColumnStandardCase are defined at the supertype IfcColumn. Geometry Use Definitions: The geometric representation of IfcColumn is given by the IfcProductDefinitionShape, allowing multiple geometric representations. Included are: Local Placement The use of local placement is defined at the supertype IfcColumn. Geometric Representations The geometric representation of IfcColumnStandardCase is defined using the following multiple shape representations for its definition:

Axis: A three-dimensional open curve (subtype of IfcBoundedCurve) defining the axis for the standard column. The cardinal point is determined by the column axis. Body: A Swept Solid Representation or a CSG representation defining the 3D shape of the standard column.

NOTE It is invalid to exchange a ‘SurfaceModel’, ‘Brep’, or ‘MappedRepresentation’ representation for the ‘Body’ shape representation of an IfcColumnStandardCase. Axis Representation The axis geometric representation of IfcColumnStandardCase is defined using the ‘Axis’ representation. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

RepresentationIdentifier : ‘Axis’ RepresentationType : ‘Curve3D’

The following additional constraints apply to the ‘Axis’ representation, if the ‘Body’ shape representation has the RepresentationType : ‘SweptSolid’:

Axis : IfcPolyline having two Points, or IfcTrimmedCurve with BasisCurve of Type IfcLine. The axis curve lies on the z axis of the object coordinate system

As shown in Figure 87, the axis shall be defined along the z axis of the object coordinate system. The axis representation can be used to represent the system length of a column that may extent the body length of the column.

Figure 87 — Column axis representation

As shown in Figure 88, the axis representation shall be used to represent the cardinal point as the offset between the ‘Axis’ and the extrusion path of the column. The extrusion path is provided as IfcExtrudedAreaSolid.ExtrudedDirection and should be parallel to the ‘Axis’. It has to be guaranteed that the value provided by IfcMaterialProfileSetUsage.CardinalPoint is consistent to the IfcExtrudedAreaSolid.Position.

Figure 88 — Column axis cardinal point

Body Representation The body representation of IfcColumnStandardCase can be represented using the representation types ‘SweptSolid’, ‘Clipping’, or ‘AdvancedSweptSolid’. SweptSolid Representation Type The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

RepresentationIdentifier : ‘Body’ RepresentationType : ‘SweptSolid’

The following additional constraints apply to the ‘SweptSolid’ representation:

Solid: IfcExtrudedAreaSolid, IfcRevolvedAreaSolid shall be supported Profile: all subtypes of IfcProfileDef (with exception of IfcArbitraryOpenProfileDef) Profile Position : For all single profiles, the IfcParameterizedProfileDef.Position shall be NIL, or having Location = 0.,0. and RefDirection = 1.,0. Extrusion:perpendicular to the profile direction. The IfcExtrudedAreaSolid.ExtrudedDirection shall be [0.,0.,1.]. Orientation: The y-axis of the profile, as determined by IfcSweptAreaSolid.Position.P[2] shall point to the Y-Axis. It indicates the “role” of the column, a role=0° means y-axis of profile = Y-axis of reference coordinate system.

Figure 89 illustrates a standard geometric representation with cardinal point applied as 5 (mid-depth centre). The following interpretation of dimension parameter applies for rectangular columns:

IfcRectangleProfileDef.YDim interpreted as column width IfcRectangleProfileDef.XDim interpreted as column depth

The following interpretation of dimension parameter applies for circular columns:

IfcCircleProfileDef.Radius interpreted as column radius.

Figure 89 — Column body extrusion

Clipping Representation Type The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

RepresentationIdentifier : ‘Body’ RepresentationType : ‘Clipping’

The following constraints apply to the advanced representation:

Solid: see ‘SweptSolid’ geometric representation Profile: see ‘SweptSolid’ geometric representation Profile Position : see ‘SweptSolid’ geometric representation Extrusion:see ‘SweptSolid’ geometric representation Orientation: see ‘SweptSolid’ geometric representation Boolean result: The IfcBooleanClippingResult shall be supported, allowing for Boolean differences between the swept solid (here IfcExtrudedAreaSolid) and one or several IfcHalfSpaceSolid (or its subtypes).

Figure 90 illustrates a ‘Clipping’ geometric representation with use of IfcBooleanClippingResult between an IfcExtrudedAreaSolid and an IfcHalfSpaceSolid to create a clipped body, with cardinal point applied as 2 (bottom centre).

Figure 90 — Column body clipping

AdvancedSweptSolid Representation Type The ‘AdvancedSweptSolid’ representation type is a valid body representation of IfcColumnStandardCase. The following attribute values for the IfcShapeRepresentation holding this geometric representation shall be used:

RepresentationIdentifier : ‘Body’ RepresentationType : ‘AdvancedSweptSolid’

The following additional constraints apply to the ‘AdvancedSweptSolid’ representation type:

Solid: IfcSurfaceCurveSweptAreaSolid, IfcFixedReferenceSweptAreaSolid, IfcExtrudedAreaSolidTapered, IfcRevolvedAreaSolidTapered shall be supported. NOTE View definitions and implementer agreement can further constrain the allowed swept solid types.

Profile: see ‘SweptSolid’ geometric representation Profile Position : see ‘SweptSolid’ geometric representation Extrusion:not applicable

Public Types

typedef IfcTemplatedEntityList<IfcColumnStandardCase> list

Public Functions

const IfcParse::entity &declaration() const
IfcColumnStandardCase(IfcEntityInstanceData *e)
IfcColumnStandardCase(std::string v1_GlobalId, ::Ifc4::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, boost::optional<std::string> v5_ObjectType, ::Ifc4::IfcObjectPlacement *v6_ObjectPlacement, ::Ifc4::IfcProductRepresentation *v7_Representation, boost::optional<std::string> v8_Tag, boost::optional<::Ifc4::IfcColumnTypeEnum::Value> v9_PredefinedType)

Public Static Functions

const IfcParse::entity &Class()