CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
OdIfc4x4::IfcGeometricRepresentationContext Class Reference

#include <IfcGeometricRepresentationContextAutoImpl.h>

Inheritance diagram for OdIfc4x4::IfcGeometricRepresentationContext:
OdIfc4x4::IfcRepresentationContext OdIfc4x4::OdIFC4X4Instance OdIfc::OdIfcInstance OdIfc4x4::IfcGeometricRepresentationSubContext

Public Member Functions

int getCoordinateSpaceDimension () const
 
void setCoordinateSpaceDimension (int CoordinateSpaceDimension)
 
double getPrecision () const
 
void setPrecision (double Precision)
 
IfcAxis2Placement worldCoordinateSystem ()
 
const OdDAIObjectId & getTrueNorth () const
 
void setTrueNorth (const OdDAIObjectId &TrueNorth)
 
void getInvHasSubContexts (OdDAIObjectIds &HasSubContexts) const
 
void getInvHasCoordinateOperation (OdDAIObjectIds &HasCoordinateOperation) const
 
 IfcGeometricRepresentationContext ()
 
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 OdIfc4x4::IfcRepresentationContext
const OdAnsiString & getContextIdentifier () const
 
void setContextIdentifier (const OdAnsiString &ContextIdentifier)
 
const OdAnsiString & getContextType () const
 
void setContextType (const OdAnsiString &ContextType)
 
void getInvRepresentationsInContext (OdDAIObjectIds &RepresentationsInContext) const
 
 IfcRepresentationContext ()
 
- Public Member Functions inherited from OdIfc4x4::OdIFC4X4Instance
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

int m_CoordinateSpaceDimension
 
double m_Precision
 
OdDAI::Select m_WorldCoordinateSystem
 
OdDAIObjectId m_TrueNorth
 
- Protected Attributes inherited from OdIfc4x4::IfcRepresentationContext
OdAnsiString m_ContextIdentifier
 
OdAnsiString m_ContextType
 
- Protected Attributes inherited from OdIfc::OdIfcInstance
voidm_resPtr
 
IfcOpResult m_resolved
 

Friends

class IfcGeometricRepresentationSubContext
 
class IfcCoordinateOperation
 

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

The IfcGeometricRepresentationContext defines the context that applies to several shape representations of products within a project. It defines the type of the context in which the shape representation is defined, and the numeric precision applicable to the geometric representation items defined in this context. In addition it can be used to offset the project coordinate system from a global point of origin, using the WorldCoordinateSystem attribute. The main representation context may also provide the true north direction, see on the image below:

<IMAGE ifcgeometricrepresentationcontext_truenorth>

The TrueNorth attribute should be provided, if the y axis of the WorldCoordinateSystem does not point to the global northing. Direction of the true north, or geographic northing direction, relative to the underlying project coordinate system as established by the attribute WorldCoordinateSystem. It is given by a 2 dimensional direction within the xy-plane of the project coordinate system. If not present, it defaults to [0.,1.] - i.e. the positive Y axis of the project coordinate system equals to the geographic northing direction. The direction is provided within project coordinate system and identifies the true north direction.

\changes

IFC4 changes: Type of the Precision attribute changed from "real" to "IfcReal".

Definition at line 58 of file IFC4X4/IfcGeometricRepresentationContextAutoImpl.h.

Constructor & Destructor Documentation

◆ IfcGeometricRepresentationContext()

OdIfc4x4::IfcGeometricRepresentationContext::IfcGeometricRepresentationContext ( )

Default constructor for the IfcGeometricRepresentationContext class.

Member Function Documentation

◆ comparedToEarlyImpl()

virtual bool OdIfc4x4::IfcGeometricRepresentationContext::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 OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ getAttr() [1/2]

virtual OdRxValue OdIfc4x4::IfcGeometricRepresentationContext::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 from OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ getAttr() [2/2]

virtual OdRxValue OdIfc4x4::IfcGeometricRepresentationContext::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 OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ getCoordinateSpaceDimension()

int OdIfc4x4::IfcGeometricRepresentationContext::getCoordinateSpaceDimension ( ) const

Returns the value of CoordinateSpaceDimension attribute. This attribute represents the integer dimension count of the coordinate space modeled in a geometric representation context.

Returns
Returns the value of CoordinateSpaceDimension attribute.

◆ getInstanceType()

virtual OdDAI::Entity * OdIfc4x4::IfcGeometricRepresentationContext::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 OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ getInvHasCoordinateOperation()

void OdIfc4x4::IfcGeometricRepresentationContext::getInvHasCoordinateOperation ( OdDAIObjectIds & HasCoordinateOperation) const

Returns the value of HasCoordinateOperation attribute. This attribute represents an instance that is used for conversion between coordinate systems. It refers to a coordinate operation (IfcCoordinateOperation instance) between a geographic map coordinate reference system, and the engineering coordinate system of this construction project. If there is more than one IfcGeometricRepresentationContext provided to the IfcProject then all contexts have an identical instance of IfcCoordinateOperation as HasCoordinateOperation referring to the same instance of IfcCoordinateReferenceSystem.

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

◆ getInvHasSubContexts()

void OdIfc4x4::IfcGeometricRepresentationContext::getInvHasSubContexts ( OdDAIObjectIds & HasSubContexts) const

Returns the value of HasSubContexts attribute. This attribute represents the set of IfcGeometricRepresentationSubContexts that refer to this IfcGeometricRepresentationContext.

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

◆ getPrecision()

double OdIfc4x4::IfcGeometricRepresentationContext::getPrecision ( ) const

Returns the value of Precision attribute. This attribute represents value of the model precision for geometric models. It is a double value (REAL), typically in 1E-5 to 1E-8 range. It indicates the tolerance under which two given points are assumed to be identical. The value can be used e.g. to sets the maximum distance from an edge curve to the underlying face surface in brep models.

Returns
Returns the value of Precision attribute.

◆ getTrueNorth()

const OdDAIObjectId & OdIfc4x4::IfcGeometricRepresentationContext::getTrueNorth ( ) const

Returns the value of TrueNorth attribute. This attribute represents direction of the true north, or geographic northing direction, relative to the underlying project coordinate system. It is given by a 2 dimensional direction within the xy-plane of the project coordinate system. If not present, it defaults to 0. 1., meaning that the positive Y axis of the project coordinate system equals the geographic northing direction.

Returns
Returns the value of TrueNorth attribute.
Remarks
If a geographic placement is provided using IfcMapConversion then the true north is for information only. In case of inconsistency, the value provided with IfcMapConversion takes precedence.

◆ inFields()

virtual OdResult OdIfc4x4::IfcGeometricRepresentationContext::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 OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ isKindOf()

virtual bool OdIfc4x4::IfcGeometricRepresentationContext::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 OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ outFields()

virtual OdResult OdIfc4x4::IfcGeometricRepresentationContext::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 OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ putAttr() [1/2]

virtual bool OdIfc4x4::IfcGeometricRepresentationContext::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 OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ putAttr() [2/2]

virtual bool OdIfc4x4::IfcGeometricRepresentationContext::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 OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ setCoordinateSpaceDimension()

void OdIfc4x4::IfcGeometricRepresentationContext::setCoordinateSpaceDimension ( int CoordinateSpaceDimension)

Sets the value of CoordinateSpaceDimension attribute. This attribute represents the integer dimension count of the coordinate space modeled in a geometric representation context.

Parameters
CoordinateSpaceDimension[in] Coordinate space dimension to set.

◆ setPrecision()

void OdIfc4x4::IfcGeometricRepresentationContext::setPrecision ( double Precision)

Sets the value of Precision attribute. This attribute represents value of the model precision for geometric models. It is a double value (REAL), typically in 1E-5 to 1E-8 range. It indicates the tolerance under which two given points are assumed to be identical. The value can be used e.g. to sets the maximum distance from an edge curve to the underlying face surface in brep models.

Parameters
Precision[in] Precision to set.

◆ setTrueNorth()

void OdIfc4x4::IfcGeometricRepresentationContext::setTrueNorth ( const OdDAIObjectId & TrueNorth)

Sets the value of TrueNorth attribute. This attribute represents direction of the true north, or geographic northing direction, relative to the underlying project coordinate system. It is given by a 2 dimensional direction within the xy-plane of the project coordinate system. If not present, it defaults to 0. 1., meaning that the positive Y axis of the project coordinate system equals the geographic northing direction.

Parameters
TrueNorth[in] TrueNorth to set.
Remarks
If a geographic placement is provided using IfcMapConversion then the true north is for information only. In case of inconsistency, the value provided with IfcMapConversion takes precedence.

◆ testAttr() [1/2]

virtual bool OdIfc4x4::IfcGeometricRepresentationContext::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 OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ testAttr() [2/2]

virtual bool OdIfc4x4::IfcGeometricRepresentationContext::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 OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ type()

virtual OdIfc::OdIfcEntityType OdIfc4x4::IfcGeometricRepresentationContext::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 OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ unsetAttr() [1/2]

virtual void OdIfc4x4::IfcGeometricRepresentationContext::unsetAttr ( const char * explicitAttrName)
overridevirtual

Resets a value for the specified attribute.

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

Reimplemented from OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ unsetAttr() [2/2]

virtual void OdIfc4x4::IfcGeometricRepresentationContext::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 OdIfc4x4::IfcRepresentationContext.

Reimplemented in OdIfc4x4::IfcGeometricRepresentationSubContext.

◆ worldCoordinateSystem()

IfcAxis2Placement OdIfc4x4::IfcGeometricRepresentationContext::worldCoordinateSystem ( )

Returns the value of WorldCoordinateSystem attribute. This attribute represents establishment of the engineering coordinate system (often referred to as the world coordinate system in CAD) for all representation contexts used by the project.

Returns
Returns the value of WorldCoordinateSystem attribute.
Remarks
It can be used to provide better numeric stability if the placement of the building(s) is far away from the origin. In most cases however it would be set to origin: (0.,0.,0.) and directions x(1.,0.,0.), y(0.,1.,0.), z(0.,0.,1.). If an geographic placement is provided using IfcMapConversion then the WorldCoordinateSystem atttibute is used to define the offset between the zero point of the local engineering coordinate system and the geographic reference point to which the IfcMapConversion offset relates. Preferably, both points (also called "project base point" and "survey point") should be coincidental. However it is possible to offset the geographic reference point from the local zero point.

Friends And Related Symbol Documentation

◆ IfcCoordinateOperation

friend class IfcCoordinateOperation
friend

◆ IfcGeometricRepresentationSubContext

Member Data Documentation

◆ m_CoordinateSpaceDimension

int OdIfc4x4::IfcGeometricRepresentationContext::m_CoordinateSpaceDimension
protected

◆ m_Precision

double OdIfc4x4::IfcGeometricRepresentationContext::m_Precision
protected

◆ m_TrueNorth

OdDAIObjectId OdIfc4x4::IfcGeometricRepresentationContext::m_TrueNorth
protected

◆ m_WorldCoordinateSystem

OdDAI::Select OdIfc4x4::IfcGeometricRepresentationContext::m_WorldCoordinateSystem
protected

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