Class Ifc4x1::IfcConstructionMaterialResource

Nested Relationships

This class is a nested type of Struct Ifc4x1.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4x1::IfcConstructionMaterialResource : public Ifc4x1::IfcConstructionResource

IfcConstructionMaterialResource identifies a material resource type in a construction project.

HISTORY: New Entity in IFC Release 2.0. Base type and documentation extended in IFC2x4.

IFC2x4 NOTE: The attribute Suppliers has been deleted; use IfcRelAssignsToResource to assign an IfcActor to fulfill the role as a supplier. The attribute UsageRatio has been deleted; use BaseQuantityConsumed and BaseQuantityProduced to indicate material usage.

Occurrences of IfcConstructionMaterialResource are consumed (wholly or partially), or occupied during a construction work task (IfcTask).

Similar to IfcConstructionProductResource, sometimes things such as 5000kg of gravel are already instantiated as an IfcProduct because it is a result of a work task (for example, ‘transporting gravel’). In this case, the instance of IfcConstructionMaterialResource can be associated with the product instance ‘5000kg of gravel’ to provide more information for resource uses. Nevertheless, IfcConstructionMaterialResource should only be used to represent resource usage (for example ‘gravel’), but not product substances (for example, ‘5000kg of gravel’). Note: This class is not the same as IfcMaterial; the former can typically represent the type of bulk materials such as sand, gravels, nails and so on (note these can be instantiated from IfcProduct as well depending their uses in the system) used in a construction process. The latter is about physical materials used in a physical building element typically with detailed positioning (e.g. offset) and layering information. Quantities for an IfcConstructionMaterialResource are defined through IfcRelDefinesByProperty and use IfcElementQuantity.

Use definitions for composition, assignment, constraints, time series, and baselines are described at the base type IfcConstructionResource.

Type use definition IfcConstructionMaterialResource defines the occurrence of any material resource; common information about material resource types is handled by IfcConstructionMaterialResourceType. The IfcConstructionMaterialResourceType (if present) may establish the common type name, common properties, and common productivities for various task types using IfcRelAssignsToProcess. The IfcConstructionMaterialResourceType is attached using the IfcRelDefinesByType.RelatingType objectified relationship and is accessible by the inverse IsTypedBy attribute.

Quantity use definition The quantities relating to the IfcConstructionMaterialResource are defined by IfcElementQuantity and attached by the IfcRelDefinesByProperties relationship. It is accessible by the inverse IsDefinedBy relationship. The following base quantities are defined and should be exchanged with the IfcElementQuantity.Name = ‘BaseQuantities’. Other quantities can be defined being subjected to local standard of measurement with another string value assigned to Name and a value provided for MethodOfMeasurement.

Qto_ConstructionMaterialResourceBaseQuantities: base quantities for all construction material resources.

Assignment use definition In addition to assignments specified at the base class IfcConstructionResource, a construction material resource may have assignments of its own using IfcRelAssignsToResource where RelatingResource refers to the IfcConstructionMaterialResource and RelatedObjects contains one or more IfcProduct subtypes as shown in Figure 184. Such relationship indicates the physical material used as input for the resource. Such products are not contained within a building structure but are referenced within a construction spatial zone, specifically IfcSpatialZone with PredefinedType=CONSTRUCTION, which is aggregated within the IfcProject. The IfcGeographicElement object is used to represent the physical material occurrence, which may optionally have placement and representation indicating intended storage on the construction site. There may be multiple chains of production such that the assigned product material(s) may have their own task and resource assignments for transporting or extracting such material.

Figure 184 — Construction material resource assignment

Public Functions

bool hasPredefinedType() const

Whether the optional attribute PredefinedType is defined for this IfcConstructionMaterialResource.

::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::Value PredefinedType() const

Defines types of construction material resources. IFC2x4 New attribute

void setPredefinedType(::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::Value v)
const IfcParse::entity &declaration() const
IfcConstructionMaterialResource(IfcEntityInstanceData *e)
IfcConstructionMaterialResource(std::string v1_GlobalId, ::Ifc4x1::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, boost::optional<std::string> v5_ObjectType, boost::optional<std::string> v6_Identification, boost::optional<std::string> v7_LongDescription, ::Ifc4x1::IfcResourceTime *v8_Usage, boost::optional<IfcTemplatedEntityList<::Ifc4x1::IfcAppliedValue>::ptr> v9_BaseCosts, ::Ifc4x1::IfcPhysicalQuantity *v10_BaseQuantity, boost::optional<::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::Value> v11_PredefinedType)

Public Static Functions

const IfcParse::entity &Class()