#### IfcGridPlacement

Natural language names

##### Semantic definitions at the entity

Entity definition

The 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. The axis direction (of x-axis) of the object coordinate system is given:

- 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) in case that the PlacementRefDirection is not given,
- by the tangent between the virtual grid intersection of PlacementLocation and the virtual grid intersection of PlacementRefDirection in case that the PlacementRefDirection is given.

The direction of the y-axis of the IfcGridPlacement is the orthogonal complement to the x-axis. The plane defined by the x and y axis shall be co-planar to the xy plane of the local placement of the IfcGrid.

> NOTE The PlacementLocation.OffsetDistances[3] and the PlacementRefDirection.OffsetDistances[3] shall either not be assigned or should have the same z offset value.

The direction of the z-axis is the orientation of the cross product of the x-axis and the y-axis, i.e. the z-axis of the IfcGridPlacement shall be co-linear to the z-axis of the local placement of the IfcGrid.

> HISTORY New entity in IFC Release 1.5. The entity name was changed from IfcConstrainedPlacement. in IFC Release 2x.

Geometry use definitions:

The following example shows the usage of placement location and direction for an IfcGridPlacement.

| PlacementRefDirection is not given - the object coordinate system is defined by: its location: given by the virtual grid intersection of PlacementLocation its x-axis direction: given by the tangent of the first intersecting axis in the offset location of the virtual grid intersection
| PlacementRefDirection is given - the object coordinate system is defined by: its location: given by the virtual grid intersection of PlacementLocation its x-axis direction: given by the tangent of the line between the virtual grid intersection of the PlacementLocation and the virtual grid intersection of the PlacementRefDirection.

Attribute definitions

# | Attribute | Type | Cardinality | Description | A
--- | --- | --- | --- | --- | ---
1 | PlacementLocation | IfcVirtualGridIntersection | [1:1] | A constraint on one or both ends of the path for an ExtrudedSolid. | X
2 | PlacementRefDirection | IfcVirtualGridIntersection | [0:1] | Reference to a second grid axis intersection, which defines the orientation of the grid placement. | X

##### Inherited definitions from supertypes

Entity inheritance
Attribute inheritance

# | Attribute | Type | Cardinality | Description | A
--- | --- | --- | --- | --- | ---
IfcObjectPlacement
| PlacesObject | IfcProduct @ObjectPlacement | S[1:1] | The IfcObjectPlacement shall be used to provide a placement and an object coordinate system for a single instance of IfcProduct. |
| ReferencedByPlacements | IfcLocalPlacement @PlacementRelTo | S[0:?] | Placements that are given relative to this placement of an object. |
IfcGridPlacement
1 | PlacementLocation | IfcVirtualGridIntersection | [1:1] | A constraint on one or both ends of the path for an ExtrudedSolid. | X
2 | PlacementRefDirection | IfcVirtualGridIntersection | [0:1] | Reference to a second grid axis intersection, which defines the orientation of the grid placement. | X

##### Formal representations

XSD Specification
`<xs:element name="IfcGridPlacement" type="ifc:IfcGridPlacement" substitutionGroup="ifc:IfcObjectPlacement" nillable="true"/>
<xs:complexType name="IfcGridPlacement">
<xs:complexContent>
<xs:extension base="ifc:IfcObjectPlacement">
<xs:sequence>
<xs:element name="PlacementLocation" type="ifc:IfcVirtualGridIntersection" nillable="true"/>
<xs:element name="PlacementRefDirection" type="ifc:IfcVirtualGridIntersection" nillable="true" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
`
EXPRESS Specification
`ENTITY IfcGridPlacement
SUBTYPE OF (IfcObjectPlacement);
PlacementLocation : IfcVirtualGridIntersection;
PlacementRefDirection : OPTIONAL IfcVirtualGridIntersection;
END_ENTITY;

EXPRESS-G diagram

`

Link to this page