Class Ifc4x3_rc1::IfcStructuralActivity

Nested Relationships

This class is a nested type of Struct Ifc4x3_rc1.

Inheritance Relationships

Base Type

Derived Types

Class Documentation

class Ifc4x3_rc1::IfcStructuralActivity : public Ifc4x3_rc1::IfcProduct

Definition from IAI: The abstract entity IfcStructuralActivity combines the definition of actions (such as forces, displacements, etc.) and reactions (support reactions, internal forces, deflections, etc.) which are specified by using the basic load definitions from the IfcStructuralLoadResource.

The differentiation between actions and reactions is realized by instantiating objects either from subclasses of IfcStructuralAction or IfcStructuralReaction respectively. They inherit commonly needed attributes from the abstract superclass IfcStructuralActivity, notably the relationship which connects actions or reactions with connections, analysis members, or elements (subtypes of IfcStructuralItem or IfcElement).

NOTE Instances of IfcStructuralActivity which are connected with an IfcElement are subject to agreements outside the scope of this specification.

NOTE The semantics of IfcStructuralActivity are only fully defined if an activity instance is connected with exactly one structural item. The inverse attribute AssignedToStructuralItem can only be empty in incomplete models or in conceptual models which are not yet ready for analysis.

HISTORY: New entity in IFC 2x2.

IFC 2x4 change: Cardinality of attribute AssignedToStructuralItem relaxed from 1 to 0..1 in order to allow for schema-compliant incomplete models as well as conceptual models without load—item relationships.

Coordinate Systems:

The following coordinate systems are distinguished:

The so-called global coordinate system is the coordinate system shared by all items and activities which are grouped in a common IfcStructuralAnalysisModel. This coordinate system is established by an ObjectPlacement. (This coordinate system is not necessarily the same as the IfcProject’s world coordinate system.) The so-called local coordinate system is a coordinate system local to a structural item (connection or member). This coordinate system is established by a Representation in conjunction with further use definitions and attributes of subtypes of IfcStructuralItem.

Representation items in topology representations are always given within the ObjectPlacement, i.e. in so-called global coordinates (global with respect to the IfcStructuralAnalysisModel to which this activity belongs).

Locations of the load objects in the AppliedLoad attribute (if of type IfcStructuralLoadConfiguration) are always given in local coordinates.

Directions of the load objects in the AppliedLoad attribute refer to global or local coordinates according to the GlobalOrLocal attribute.

The ObjectPlacement and Representation are sometimes not explicitly instantiated; instead they may be implied as described below. Global and local coordinate systems are then determined in the same way as with explicit placement and representation.

Topology Use Definitions:

Instances of IfcStructuralActivity which are connected with a structural item of same dimensionality, i.e.

a point action or reaction connected with a point item (IfcStructuralPointConnection), a curve action or reaction connected with a curve item (IfcStructuralCurveConnection, IfcStructuralCurveMember), or a surface action or reaction connected with a surface item (IfcStructuralSurfaceConnection, IfcStructuralSurfaceMember) and which acts on the entire surface of the item and is not specified by isocontours

shall not have an ObjectPlacement nor a Representation. It is implied that the placement and representation of the IfcStructuralActivity is the same as the ones of the IfcStructuralItem.

Instances of IfcStructuralActivity which are connected with

a curve item (IfcStructuralCurveConnection, IfcStructuralCurveMember) and act on a point of the item, or a surface item (IfcStructuralSurfaceConnection, IfcStructuralSurfaceMember) and act on a point or on a curve or on a part of the surface of the item

shall have a topology representation as specified below. It includes a placement and a product representation. The IfcProductRepresentation shall be given by an item in a Representation of type IfcTopologyRepresentation.

Instances of IfcStructuralActivity which are connected with

a surface item (IfcStructuralSurfaceConnection, IfcStructuralSurfaceMember) and are specified by isocontours

shall have a shape representation as specified below. It includes a placement and a product representation. The IfcProductRepresentation shall be given by items in a Representation of type IfcShapeRepresentation. Shape representation and topology representation may be combined.

Local Placement

The local placement for IfcStructuralActivity is defined in its supertype IfcProduct. It is defined by the IfcLocalPlacement, which establishes a global coordinate system which shall be common to all items and activities in an IfcStructuralAnalysisModel.

Topology Representation

Instances of IfcStructuralActivity which act on parts of a surface item shall have a topology representation given by a face with underlying surface geometry, IfcFaceSurface, which should be the single item of IfcTopologyRepresentation.Items. The surface establishes a local coordinate system of the activity:

The origin of surface parameters u,v is the origin of the local coordinate system. The local x and y directions follow the tangents on the surface and are in parallel with and directed like u and v respectively. The local z direction is in parallel with and directed like the surface normal.

RepresentationIdentifier: ‘Reference’ RepresentationType: ‘Face’

Instances of IfcStructuralActivity which act on a curve on a surface item shall have a topology representation given by an edge (IfcEdge or subtype), which should be the single item of IfcTopologyRepresentation.Items. The curve geometry shall be compatible with the surface geometry of the connected item. In conjunction with this surface, the curve establishes a local coordinate system of the activity:

The origin of the curve parameter u is the origin of the local coordinate system. The local x direction follows the tangent on the curve and is directed like u. The local z direction is in parallel with and directed like the surface normal of the connected surface item. The local x,y,z directions form a right-handed Cartesian coordinate system.

RepresentationIdentifier: ‘Reference’ RepresentationType: ‘Edge’

NOTE While an IfcEdge (or IfcOrientedEdge with underlying IfcEdge) does not provide an explicit underlying curve geometry, it may be used to imply an underlying straight line as reference curve with the origin of the curve parameter at the start vertex point.

Instances of IfcStructuralActivity which act on a single point on a curve or surface item shall have a topology representation given by an IfcVertexPoint, which should be the single item of IfcTopologyRepresentation.Items. The point geometry shall be compatible with the curve or surface geometry of the connected item. The local coordinate system of the activity is oriented by the curve or surface geometry of the connected item as described above for activities with edge or face topology.

RepresentationIdentifier: ‘Reference’ RepresentationType: ‘Vertex’

Shape Representation

Instances of IfcStructuralActivity which act on a surface item and are specified by isocontours (level sets) shall have a shape representation given by a set of curves on a surface, IfcPCurve. The basis surface shall comply with or preferably be identical with the surface of the structural item to which the activity is connected. The representation identifier and type of this geometric representation is:

RepresentationIdentifier: ‘Level set’ RepresentationType: ‘GeometricCurveSet’

Subclassed by Ifc4x3_rc1::IfcStructuralAction, Ifc4x3_rc1::IfcStructuralReaction

Public Types

typedef IfcTemplatedEntityList<IfcStructuralActivity> list

Public Functions

::Ifc4x3_rc1::IfcStructuralLoad *AppliedLoad() const

Load or result resource object which defines the load type, direction, and load values.

In case of activities which are variably distributed over curves or surfaces, IfcStructuralLoadConfiguration is used which provides a list of load samples and their locations within the load distribution, measured in local coordinates of the curve or surface on which this activity acts. The contents of this load or result distribution may be further restricted by definitions at subtypes of IfcStructuralActivity.

void setAppliedLoad(::Ifc4x3_rc1::IfcStructuralLoad *v)
::Ifc4x3_rc1::IfcGlobalOrLocalEnum::Value GlobalOrLocal() const

Indicates whether the load directions refer to the global coordinate system (global to the analysis model, i.e. as established by IfcStructuralAnalysisModel.SharedPlacement) or to the local coordinate system (local to the activity or connected item, as established by an explicit or implied representation and its parameter space).

NOTE, the informal definition of IfcRepresentationResource.IfcGlobalOrLocalEnum doe s not distinguish between “global coordinate system” and “world coordinate system”. On the other hand, this distinction is necessary in the IfcStructuralAnalysisDomain where the shared “global” coordinate system of an analysis model may very well not be the same as the project-wide world coordinate system.

In the scope of IfcStructuralActivity.GlobalOrLocal, the meaning of GLOBAL_COORDS is therefore not to be taken as world coordinate system but as the analysis model specific shared coordinate system. In contrast, LOCAL_COORDS is to be taken as coordinates which are local to individual structural items and activities, as established by subclass-specific geometry use definitions.

void setGlobalOrLocal(::Ifc4x3_rc1::IfcGlobalOrLocalEnum::Value v)
IfcTemplatedEntityList<IfcRelConnectsStructuralActivity>::ptr AssignedToStructuralItem() const
const IfcParse::entity &declaration() const
IfcStructuralActivity(IfcEntityInstanceData *e)
IfcStructuralActivity(std::string v1_GlobalId, ::Ifc4x3_rc1::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, boost::optional<std::string> v5_ObjectType, ::Ifc4x3_rc1::IfcObjectPlacement *v6_ObjectPlacement, ::Ifc4x3_rc1::IfcProductRepresentation *v7_Representation, ::Ifc4x3_rc1::IfcStructuralLoad *v8_AppliedLoad, ::Ifc4x3_rc1::IfcGlobalOrLocalEnum::Value v9_GlobalOrLocal)

Public Static Functions

const IfcParse::entity &Class()