Class Ifc4::IfcLocalPlacement¶
Defined in File Ifc4.h
Nested Relationships¶
This class is a nested type of Struct Ifc4.
Inheritance Relationships¶
Base Type¶
public Ifc4::IfcObjectPlacement
(Class Ifc4::IfcObjectPlacement)
Class Documentation¶
-
class
Ifc4
::
IfcLocalPlacement
: public Ifc4::IfcObjectPlacement¶ IfcLocalPlacement defines the relative placement of a product in relation to the placement of another product or the absolute placement of a product within the geometric representation context of the project. IfcLocalPlacement allows that an IfcProduct can be placed by this IfcLocalPlacement (through the attributeObjectPlacement) within the local coordinate system of the object placement of another IfcProduct, which is referenced by the PlacementRelTo. Rules to prevent cyclic relative placements have to be introduced on the application level. If the PlacementRelTo is not given, then the IfcProduct is placed absolutely within the world coordinate system.
HISTORY: New entity in IFC Release 1.0.
Geometry use definitions The following conventions shall apply as default relative positions if the relative placement is used. The conventions are given for all five direct subtypes of IfcProduct, the IfcSpatialStructureElement, IfcElement, IfcAnnotation, IfcGrid, IfcPort. More detailed placement information is given at the level of subtypes of those five types mentioned.
For the subtypes of IfcSpatialStructureElement the following conventions apply
IfcSite shall be placed absolutely within the world coordinate system established by the geometric representation context of the IfcProject IfcBuilding shall be placed relative to the local placement of IfcSite IfcBuildingStorey shall be placed relative to the local placement of IfcBuilding
For IfcGrid and IfcAnnotation the convention applies that it shall be placed relative
to the local placement of its container (IfcSite, IfcBuilding, IfcBuildingStorey)
it should be the same container element that is referenced by the IfcRelContainedInSpatialStructure containment relationship,
For IfcPort the convention applies that it shall be placed relative
to the local placement of the element it belongs to (IfcElement)
it should be the same element that is referenced by the IfcRelConnectsPortToElement connection relationship,
For IfcElement the convention applies that it shall be placed relative:
to the local placement of its container (IfcSite, IfcBuilding, IfcBuildingStorey)
it should be the same container element that is referenced by the IfcRelContainedInSpatialStructure containment relationship,
to the local placement of the IfcElement to which it is tied by an element composition relationship
for features that are located relative to the main component (such as openings), as expressed by IfcRelVoidsElement and IfcRelProjectsElement, for elements that fill an opening (such as doors or windows), as expressed byIfcRelFillsElement, for coverings that cover the element, as expressed byIfcRelCoversBldgElements, for sub components that are aggregated to the main component, as expressed by IIfcRelAggregates and IfcRelNests)
If the PlacementRelTo relationship is not given, then it defaults to an absolute placement within the world coordinate system established by the referenced geometric representation context within the project.
Public Types
-
typedef IfcTemplatedEntityList<IfcLocalPlacement>
list
¶
Public Functions
-
bool
hasPlacementRelTo
() const¶ Whether the optional attribute PlacementRelTo is defined for this IfcLocalPlacement.
-
::Ifc4::IfcObjectPlacement *
PlacementRelTo
() const¶ Reference to Object that provides the relative placement by its local coordinate system. If it is omitted, then the local placement is given to the WCS, established by the geometric representation context.
-
void
setPlacementRelTo
(::Ifc4::IfcObjectPlacement *v)¶
-
::Ifc4::IfcAxis2Placement *
RelativePlacement
() const¶ Geometric placement that defines the transformation from the related coordinate system into the relating. The placement can be either 2D or 3D, depending on the dimension count of the coordinate system.
-
void
setRelativePlacement
(::Ifc4::IfcAxis2Placement *v)¶
-
IfcLocalPlacement
(IfcEntityInstanceData *e)¶
-
IfcLocalPlacement
(::Ifc4::IfcObjectPlacement *v1_PlacementRelTo, ::Ifc4::IfcAxis2Placement *v2_RelativePlacement)¶
-
typedef IfcTemplatedEntityList<IfcLocalPlacement>