8.7.3.12 IfcGridPlacement
8.7.3.12.1 Semantic definition
IFC4.3.0.0 CHANGE In IFC 4.3 the PlacementRelTo attribute has been moved from IfcLocalPlacement to its supertype IfcObjectPlacement, also a supertype of this entity. That means that for correct global positioning, the IfcGridPlacement will reference (a) the ObjectPlacement of the IfcGrid by means of IfcObjectPlacement.PlacementRelTo and (b) the pair of IfcGridAxis contained in that same grid by means of the IfcVirtualGridIntersection.
IfcGridPlacement provides a specialization of IfcObjectPlacement in which the placement and axis direction of the object coordinate system is defined by a reference to the design grid as defined in IfcGrid.
The location of the object coordinate system is given by the attribute PlacementLocation. It is defined as an IfcVirtualGridIntersection, that is, an intersection between two grid axes with optional offsets.
The axis direction of the xaxis of the object coordinate system is given either:
 PlacementRefDirection = NIL: by the tangent of the first grid axis (PlacementLocation.IntersectingAxes[1]) at the virtual intersection (maybe using the offset curve, if PlacementLocation.OffsetDistances is given);
 PlacementRefDirection = IfcDirection: by the explicitly provided direction information;
 PlacementRefDirection = IfcVirtualGridIntersection: by the tangent between the virtual grid intersection of PlacementLocation and the virtual grid intersection of PlacementRefDirection. Offsets as potentially provided in the IfcVirtualGridIntersection's of PlacementLocation and PlacementRefDirection have to be taken into account.
The direction of the yaxis of the IfcGridPlacement is the orthogonal complement to the xaxis. The plane defined by the x and y axis shall be coplanar to the xy plane of the local placement of the IfcGrid.
The direction of the zaxis is the orientation of the cross product of the xaxis and the yaxis, i.e. the zaxis of the IfcGridPlacement shall be colinear to the zaxis of the local placement of the IfcGrid.
The following figures/ show the usage of placement location and direction for an IfcGridPlacement.
Figure 8.7.3.12.A illustrates the case where PlacementRefDirection is not given  the object coordinate system is defined by:
 its location: given by the virtual grid intersection of PlacementLocation
 its xaxis direction: given by the tangent of the first intersecting axis in the offset location of the virtual grid intersection
Figure 8.7.3.12.B illustrates the case where PlacementRefDirection is given as an IfcDirection the object coordinate system is defined by:
 its location: given by the virtual grid intersection of PlacementLocation
 its xaxis direction: given by the DirectionRatios of the IfcDirection, only the ratios for x and y are taken into account,
Figure 8.7.3.12.C illustrates the case where PlacementRefDirection is given as an IfcVirtualGridIntersection the object coordinate system is defined by:
 its location: given by the virtual grid intersection of PlacementLocation
 its xaxis direction: given by the tangent of the line between the virtual grid intersection of the PlacementLocation and the virtual grid intersection of the PlacementRefDirection.
8.7.3.12.2 Entity inheritance
8.7.3.12.3 Attributes
#  Attribute  Type  Description 

IfcObjectPlacement (3)  
1  PlacementRelTo  OPTIONAL IfcObjectPlacement 
Reference to object placement that provides the relative placement with its placement in a grid, local coordinate system or linear referenced placement. If it is omitted, then in the case of linear placement it is established by the origin of horizontal alignment of the referenced IfcAlignment Axis. In the case of local placement it is established by the geometric representation context. 
PlacesObject  SET [0:?] OF IfcProduct FOR ObjectPlacement 
The IfcObjectPlacement shall be used to provide a placement and an object coordinate system for instances of IfcProduct.


ReferencedByPlacements  SET [0:?] OF IfcObjectPlacement FOR PlacementRelTo 
No description available. 

Click to show 3 hidden inherited attributes Click to hide 3 inherited attributes  
IfcGridPlacement (2)  
2  PlacementLocation  IfcVirtualGridIntersection 
Placement of the object coordinate system defined by the intersection of two grid axes. 
3  PlacementRefDirection  OPTIONAL IfcGridPlacementDirectionSelect 
Reference to either an explicit direction, or a second grid axis intersection, which defines the orientation of the grid placement. 
8.7.3.12.4 Examples
8.7.3.12.5 Formal representation
ENTITY IfcGridPlacement
SUBTYPE OF (IfcObjectPlacement);
PlacementLocation : IfcVirtualGridIntersection;
PlacementRefDirection : OPTIONAL IfcGridPlacementDirectionSelect;
END_ENTITY;