CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
OdIfc4x3_add2::IfcMaterialLayer Class Reference

#include <IfcMaterialLayerAutoImpl.h>

Inheritance diagram for OdIfc4x3_add2::IfcMaterialLayer:
OdIfc4x3_add2::IfcMaterialDefinition OdIfc4x3_add2::OdIfc4x3Instance OdIfc::OdIfcInstance OdIfc4x3_add2::IfcMaterialLayerWithOffsets

Public Member Functions

const OdDAIObjectId & getMaterial () const
 
void setMaterial (const OdDAIObjectId &Material)
 
double getLayerThickness () const
 
void setLayerThickness (double LayerThickness)
 
OdDAI::Logical getIsVentilated () const
 
void setIsVentilated (OdDAI::Logical IsVentilated)
 
const OdAnsiString & getName () const
 
void setName (const OdAnsiString &Name)
 
const OdAnsiString & getDescription () const
 
void setDescription (const OdAnsiString &Description)
 
const OdAnsiString & getCategory () const
 
void setCategory (const OdAnsiString &Category)
 
int getPriority () const
 
void setPriority (int Priority)
 
OdDAIObjectId getInvToMaterialLayerSet () const
 
 IfcMaterialLayer ()
 
virtual OdResult inFields (OdDAI::OdSpfFilerBase *rdFiler) override
 
virtual OdResult outFields (OdDAI::OdSpfFilerBase *wrFiler) override
 
virtual OdDAI::Entity * getInstanceType () const override
 
virtual OdRxValue getAttr (const char *attrName) const override
 
virtual bool comparedToEarlyImpl (const OdDAI::ApplicationInstance *pOther, OdRx::Ordering &ordering) const override
 
virtual void unsetAttr (const char *explicitAttrName) override
 
virtual bool testAttr (const char *explicitAttrName) const override
 
virtual bool putAttr (const char *explicitAttrName, const OdRxValue &val) override
 
virtual bool isKindOf (OdIfc::OdIfcEntityType entityType) const override
 
virtual OdIfc::OdIfcEntityType type () const override
 
virtual OdRxValue getAttr (const OdIfc::OdIfcAttribute attrDef) const override
 
virtual void unsetAttr (const OdIfc::OdIfcAttribute explicitAttrDef) override
 
virtual bool testAttr (const OdIfc::OdIfcAttribute explicitAttrDef) const override
 
virtual bool putAttr (const OdIfc::OdIfcAttribute explicitAttrDef, const OdRxValue &val) override
 
- Public Member Functions inherited from OdIfc4x3_add2::IfcMaterialDefinition
void getInvAssociatedTo (OdDAIObjectIds &AssociatedTo) const
 
void getInvHasExternalReferences (OdDAIObjectIds &HasExternalReferences) const
 
void getInvHasProperties (OdDAIObjectIds &HasProperties) const
 
- Public Member Functions inherited from OdIfc4x3_add2::OdIfc4x3Instance
void setInverseCounterParts () override
 
- Public Member Functions inherited from OdIfc::OdIfcInstance
 ODRX_DECLARE_MEMBERS (OdIfcInstance)
 
 OdIfcInstance ()
 
 ~OdIfcInstance ()
 
bool isInstanceOf (OdIfcEntityType entityType) const
 
IfcOpResult resolved ()
 
void resolve (IfcOpResult resolved, void *resPtr)
 
void unresolve ()
 
virtual void setGsNode (OdGsCache *pGsNode)
 
virtual OdGsCachegsNode () const
 
virtual OdUInt32 subSetAttributes (OdGiDrawableTraits *traits) const
 
virtual bool subWorldDraw (OdGiWorldDraw *wd) const
 
virtual OdDbStub * ownerId () const
 

Protected Attributes

OdDAIObjectId m_Material
 
IfcNonNegativeLengthMeasure m_LayerThickness
 
OdDAI::Logical m_IsVentilated
 
OdAnsiString m_Name
 
OdAnsiString m_Description
 
OdAnsiString m_Category
 
int m_Priority
 
- Protected Attributes inherited from OdIfc::OdIfcInstance
voidm_resPtr
 
IfcOpResult m_resolved
 

Friends

class IfcMaterialLayerSet
 

Additional Inherited Members

- Static Public Member Functions inherited from OdIfc::OdIfcInstance
static const OdGePoint3dasPoint3d (const OdIfcInstance *inst)
 
static const OdGePoint2dasPoint2d (const OdIfcInstance *inst)
 
static const OdGeVector3dasVector3d (const OdIfcInstance *inst)
 
static const OdGeVector2dasVector2d (const OdIfcInstance *inst)
 
static const OdGeMatrix2dasMatrix2d (const OdIfcInstance *inst)
 
static const OdGeMatrix3dasMatrix3d (const OdIfcInstance *inst)
 
static OdIfcCompoundPtr asCompound (OdSmartPtr< OdIfcInstance > inst)
 
static const OdCmEntityColorasRgbColor (const OdIfcInstance *inst)
 

Detailed Description

IfcMaterialLayer is a single and identifiable part of an element which is constructed of a number of layers (one or more). Each IfcMaterialLayer has a constant thickness and is located relative to the referencing IfcMaterialLayerSet along the material layer set base (MlsBase).

Air gaps within a material layer set are represented as an IfcMaterialLayer with the attribute IsVentilated having the value TRUE or UNKNOWN. Such air gaps is interpreted as voids (not having a material). The IfcMaterialLayer can have a material layer name which may differ from name of the IfcMaterial that is referenced.

\changes

IFC4 changes: Type of the LayerThickness attribute changed from "IfcPositiveLengthMeasure" to "IfcNonNegativeLengthMeasure"

Definition at line 51 of file Ifc4x3/IfcMaterialLayerAutoImpl.h.

Constructor & Destructor Documentation

◆ IfcMaterialLayer()

OdIfc4x3_add2::IfcMaterialLayer::IfcMaterialLayer ( )

Default constructor for the IfcMaterialLayer class.

Member Function Documentation

◆ comparedToEarlyImpl()

virtual bool OdIfc4x3_add2::IfcMaterialLayer::comparedToEarlyImpl ( const OdDAI::ApplicationInstance * pOther,
OdRx::Ordering & ordering ) const
overridevirtual

Early-bound version of instances comparison.

Parameters
pOther[in] Other application instance.
ordering[out] Receives the ordering (comparison) status.
Returns
true if comparison was performed, false if method has no implementation, so late-bound version could be applied.
Remarks
If the method returns true, the ordering parameter can receive one of the following statuses:
Value Description kLessThan -1 This object < Other Object. kEqual 0 This object = Other Object. kGreaterThan 1 This object > Other Object. kNotOrderable 2 This class is not orderable.

Reimplemented from OdIfc4x3_add2::IfcMaterialDefinition.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

◆ getAttr() [1/2]

virtual OdRxValue OdIfc4x3_add2::IfcMaterialLayer::getAttr ( const char * attrName) const
overridevirtual

Returns an attribute value for the specified attribute name.

Parameters
attrName[in] Name of an attribute to query.
Returns
OdRxValue object that represents a generic variant type value.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

◆ getAttr() [2/2]

virtual OdRxValue OdIfc4x3_add2::IfcMaterialLayer::getAttr ( const OdIfc::OdIfcAttribute attrDef) const
overridevirtual

Returns an attribute value for the specified attribute definition.

Parameters
attrDef[in] Attribute definition to query.
Returns
OdRxValue object that represents a generic variant type value.

Reimplemented from OdIfc4x3_add2::IfcMaterialDefinition.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

◆ getCategory()

const OdAnsiString & OdIfc4x3_add2::IfcMaterialLayer::getCategory ( ) const

Returns the value of Category attribute. This attribute represents category of the material layer, e.g. the role it has in the layer set it belongs to (such as 'load bearing', 'thermal insulation' etc.). The list of keywords can be extended by model view definitions, however the following keywords apply in general: 'LoadBearing' — for all material layers having a load bearing function. 'Insulation' — for all material layers having an insulating function. 'Inner finish' — for the material layer being the inner finish. 'Outer finish' — for the material layer being the outer finish.

Returns
Returns the value of Category attribute.

◆ getDescription()

const OdAnsiString & OdIfc4x3_add2::IfcMaterialLayer::getDescription ( ) const

Returns the value of Description attribute. This attribute represents definition of the material layer in more descriptive terms than specified by attributes Name or Category.

Returns
Returns the value of Description attribute.

◆ getInstanceType()

virtual OdDAI::Entity * OdIfc4x3_add2::IfcMaterialLayer::getInstanceType ( ) const
overridevirtual

Returns a type of a class instance.

Returns
Pointer to the <exref target=https://docs.opendesign.com/tkernel_api_cpp/OdDAI__Entity.html>>OdDAI::Entity</exref> type that determines an entity definition within a schema.

Reimplemented from OdIfc4x3_add2::IfcMaterialDefinition.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

◆ getInvToMaterialLayerSet()

OdDAIObjectId OdIfc4x3_add2::IfcMaterialLayer::getInvToMaterialLayerSet ( ) const

Returns the value of ToMaterialLayerSet attribute. This attribute represents reference to the IfcMaterialLayerSet in which the material layer is included.

Parameters
ToMaterialLayerSet[out] Receives the value of ToMaterialLayerSet attribute.

◆ getIsVentilated()

OdDAI::Logical OdIfc4x3_add2::IfcMaterialLayer::getIsVentilated ( ) const

Returns the value of IsVentilated attribute. This attribute represents indication of whether the material layer represents an air layer (or cavity). TRUE if the material layer is an air gap and provides air exchange from the layer to the outside air. UNKNOWN if the material layer is an air gap and does not provide air exchange (or when this information about air exchange of the air gap is not available). FALSE if the material layer is a solid material layer (the default).

Returns
Returns the value of IsVentilated attribute.

◆ getLayerThickness()

double OdIfc4x3_add2::IfcMaterialLayer::getLayerThickness ( ) const

Returns the value of LayerThickness attribute. This attribute represents the thickness of the material layer. The meaning of thickness depends on its usage. In case of building elements elements utilizing IfcMaterialLayerSetUsage, the dimension is measured along the positive LayerSetDirection as specified in IfcMaterialLayerSetUsage.

Returns
Returns the value of LayerThickness attribute.

◆ getMaterial()

const OdDAIObjectId & OdIfc4x3_add2::IfcMaterialLayer::getMaterial ( ) const

Returns the value of Material attribute. This attribute represents optional reference to the material from which the layer is constructed. If this value is not specified, it does not denote a layer with no material (an air gap), it only means that the material is not specified at that point.

Returns
Returns the value of Material attribute.

◆ getName()

const OdAnsiString & OdIfc4x3_add2::IfcMaterialLayer::getName ( ) const

Returns the value of Name attribute. This attribute represents the name by which the material layer is known.

Returns
Returns the value of Name attribute.

◆ getPriority()

int OdIfc4x3_add2::IfcMaterialLayer::getPriority ( ) const

Returns the value of Priority attribute. This attribute represents the relative priority of the layer, expressed as normalized integer range [0..100]. Controls how layers intersect in connections and corners of building elements: a layer from one element protrudes into (i.e. displaces) a layer from another element in a joint of these elements if the former element's layer has higher priority than the latter. The priority value for a material layer in an element has to be set and maintained by software applications in relation to the material layers in connected elements.

Returns
Returns the value of Priority attribute.

◆ inFields()

virtual OdResult OdIfc4x3_add2::IfcMaterialLayer::inFields ( OdDAI::OdSpfFilerBase * rdFiler)
overridevirtual

Reads object's data from the specified filer.

Parameters
rdFiler[in] Pointer to a filer from which to read the data.
Returns
A value of OdResult type that contains the result of the method execution.

Reimplemented from OdIfc4x3_add2::IfcMaterialDefinition.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

◆ isKindOf()

virtual bool OdIfc4x3_add2::IfcMaterialLayer::isKindOf ( OdIfc::OdIfcEntityType entityType) const
overridevirtual

Checks whether the specified instance is the object derived from or belongs to this class.

Parameters
entityType[in] Entity to check.
Returns
true if the specified instance is the object derived from or belongs to this class, false otherwise.

Reimplemented from OdIfc4x3_add2::IfcMaterialDefinition.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

◆ outFields()

virtual OdResult OdIfc4x3_add2::IfcMaterialLayer::outFields ( OdDAI::OdSpfFilerBase * wrFiler)
overridevirtual

Writes object's data the the specified filer.

Parameters
wrFiler[in] Pointer to a filer to which to write the data.
Returns
A value of OdResult type that contains the result of the method execution.

Reimplemented from OdIfc4x3_add2::IfcMaterialDefinition.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

◆ putAttr() [1/2]

virtual bool OdIfc4x3_add2::IfcMaterialLayer::putAttr ( const char * explicitAttrName,
const OdRxValue & val )
overridevirtual

Sets the specified attribute with a given value.

Parameters
explicitAttrName[in] Explicit name of the attribute to set.
val[in] Value to set.
Returns
true if the value is successfully set for the specified attribute, false otherwise.

Reimplemented from OdIfc::OdIfcInstance.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

◆ putAttr() [2/2]

virtual bool OdIfc4x3_add2::IfcMaterialLayer::putAttr ( const OdIfc::OdIfcAttribute explicitAttrDef,
const OdRxValue & val )
overridevirtual

Sets the specified attribute with a given value.

Parameters
explicitAttrDef[in] Explicit attribute definition to set.
val[in] Value to set.
Returns
true if the value is successfully set for the specified attribute, false otherwise.

Reimplemented from OdIfc4x3_add2::IfcMaterialDefinition.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

◆ setCategory()

void OdIfc4x3_add2::IfcMaterialLayer::setCategory ( const OdAnsiString & Category)

Sets the value of Category attribute. This attribute represents category of the material layer, e.g. the role it has in the layer set it belongs to (such as 'load bearing', 'thermal insulation' etc.). The list of keywords can be extended by model view definitions, however the following keywords apply in general: 'LoadBearing' — for all material layers having a load bearing function. 'Insulation' — for all material layers having an insulating function. 'Inner finish' — for the material layer being the inner finish. 'Outer finish' — for the material layer being the outer finish.

Parameters
Category[in] Category to set.

◆ setDescription()

void OdIfc4x3_add2::IfcMaterialLayer::setDescription ( const OdAnsiString & Description)

Sets the value of Description attribute. This attribute represents definition of the material layer in more descriptive terms than specified by attributes Name or Category.

Parameters
Description[in] Description to set.

◆ setIsVentilated()

void OdIfc4x3_add2::IfcMaterialLayer::setIsVentilated ( OdDAI::Logical IsVentilated)

Sets the value of IsVentilated attribute. This attribute represents indication of whether the material layer represents an air layer (or cavity). TRUE if the material layer is an air gap and provides air exchange from the layer to the outside air. UNKNOWN if the material layer is an air gap and does not provide air exchange (or when this information about air exchange of the air gap is not available). FALSE if the material layer is a solid material layer (the default).

Parameters
IsVentilated[in] IsVentilated to set.

◆ setLayerThickness()

void OdIfc4x3_add2::IfcMaterialLayer::setLayerThickness ( double LayerThickness)

Sets the value of LayerThickness attribute. This attribute represents the thickness of the material layer. The meaning of thickness depends on its usage. In case of building elements elements utilizing IfcMaterialLayerSetUsage, the dimension is measured along the positive LayerSetDirection as specified in IfcMaterialLayerSetUsage.

Parameters
LayerThickness[in] LayerThickness to set.

◆ setMaterial()

void OdIfc4x3_add2::IfcMaterialLayer::setMaterial ( const OdDAIObjectId & Material)

Sets the value of Material attribute. This attribute represents optional reference to the material from which the layer is constructed. If this value is not specified, it does not denote a layer with no material (an air gap), it only means that the material is not specified at that point.

Parameters
Material[in] Material to set.

◆ setName()

void OdIfc4x3_add2::IfcMaterialLayer::setName ( const OdAnsiString & Name)

Sets the value of Name attribute. This attribute represents the name by which the material layer is known.

Parameters
Name[in] Name to set.

◆ setPriority()

void OdIfc4x3_add2::IfcMaterialLayer::setPriority ( int Priority)

Sets the value of Priority attribute. This attribute represents the relative priority of the layer, expressed as normalized integer range [0..100]. Controls how layers intersect in connections and corners of building elements: a layer from one element protrudes into (i.e. displaces) a layer from another element in a joint of these elements if the former element's layer has higher priority than the latter. The priority value for a material layer in an element has to be set and maintained by software applications in relation to the material layers in connected elements.

Parameters
Priority[in] Priority to set.

◆ testAttr() [1/2]

virtual bool OdIfc4x3_add2::IfcMaterialLayer::testAttr ( const char * explicitAttrName) const
overridevirtual

Checks whether the specified attribute is set.

Parameters
explicitAttrName[in] Explicit name of the attribute to test.
Returns
true if the specified attribute is set, false otherwise.

Reimplemented from OdIfc4x3_add2::IfcMaterialDefinition.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

◆ testAttr() [2/2]

virtual bool OdIfc4x3_add2::IfcMaterialLayer::testAttr ( const OdIfc::OdIfcAttribute explicitAttrDef) const
overridevirtual

Checks whether the specified attribute is set.

Parameters
explicitAttrDef[in] Attribute definition to test.
Returns
true if the specified attribute is set, false otherwise.

Reimplemented from OdIfc4x3_add2::IfcMaterialDefinition.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

◆ type()

virtual OdIfc::OdIfcEntityType OdIfc4x3_add2::IfcMaterialLayer::type ( ) const
overridevirtual

Returns the type of this entity.

Returns
A value of the <exref target=https://docs.opendesign.com/tkernel_api_cpp/OdIfc__OdIfcEntityType.html>>OdIfc::OdIfcEntityType</exref> type that represents type of this entity.

Reimplemented from OdIfc4x3_add2::IfcMaterialDefinition.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

◆ unsetAttr() [1/2]

virtual void OdIfc4x3_add2::IfcMaterialLayer::unsetAttr ( const char * explicitAttrName)
overridevirtual

Resets a value for the specified attribute.

Parameters
explicitAttrName[in] Explicit name of the attribute to reset.

Reimplemented from OdIfc4x3_add2::IfcMaterialDefinition.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

◆ unsetAttr() [2/2]

virtual void OdIfc4x3_add2::IfcMaterialLayer::unsetAttr ( const OdIfc::OdIfcAttribute explicitAttrDef)
overridevirtual

Resets a value for the specified attribute.

Parameters
explicitAttrDef[in] Explicit definition that represents an attribute to reset.

Reimplemented from OdIfc4x3_add2::IfcMaterialDefinition.

Reimplemented in OdIfc4x3_add2::IfcMaterialLayerWithOffsets.

Friends And Related Symbol Documentation

◆ IfcMaterialLayerSet

friend class IfcMaterialLayerSet
friend

Definition at line 347 of file Ifc4x3/IfcMaterialLayerAutoImpl.h.

Member Data Documentation

◆ m_Category

OdAnsiString OdIfc4x3_add2::IfcMaterialLayer::m_Category
protected

Definition at line 343 of file Ifc4x3/IfcMaterialLayerAutoImpl.h.

◆ m_Description

OdAnsiString OdIfc4x3_add2::IfcMaterialLayer::m_Description
protected

Definition at line 342 of file Ifc4x3/IfcMaterialLayerAutoImpl.h.

◆ m_IsVentilated

OdDAI::Logical OdIfc4x3_add2::IfcMaterialLayer::m_IsVentilated
protected

Definition at line 340 of file Ifc4x3/IfcMaterialLayerAutoImpl.h.

◆ m_LayerThickness

IfcNonNegativeLengthMeasure OdIfc4x3_add2::IfcMaterialLayer::m_LayerThickness
protected

Definition at line 339 of file Ifc4x3/IfcMaterialLayerAutoImpl.h.

◆ m_Material

OdDAIObjectId OdIfc4x3_add2::IfcMaterialLayer::m_Material
protected

Definition at line 338 of file Ifc4x3/IfcMaterialLayerAutoImpl.h.

◆ m_Name

OdAnsiString OdIfc4x3_add2::IfcMaterialLayer::m_Name
protected

Definition at line 341 of file Ifc4x3/IfcMaterialLayerAutoImpl.h.

◆ m_Priority

int OdIfc4x3_add2::IfcMaterialLayer::m_Priority
protected

Definition at line 344 of file Ifc4x3/IfcMaterialLayerAutoImpl.h.


The documentation for this class was generated from the following file: