IfcGridAxis

Natural language names
Semantic definitions at the entity
Entity definition

An individual axis, the IfcGridAxis, is defined in the context of a design grid. The axis definition is based on a curve of dimensionality 2. The grid axis is positioned within the XY plane of the position coordinate system defined by the IfcDesignGrid.

HISTORY: New entity in IFC Release 1.0

Geometry Use Definitions:

The standard geometric representation of IfcGridAxis is defined using a 2D curve entity. Grid axes are normally defined by an offset to another axis. The IfcOffsetCurve2D supports this concept.

Each grid axis has a sense given by the parameterization of the curve. The attribute SameSense is an indicator of whether or not the sense of the grid axis agrees with, or opposes, that of the underlying curve.

Illustration

design grid

The grid axis is defined as a 2D curve within the xy plane of the position coordinate system. Any curve can be used to define a grid axis, most common is the use of IfcLine for linear grids and IfcCircle for radial grids.

Most grids are defined by a pair of axis lists, each defined by a base grid axis and axes given by an offset to the base axis. The use of IfcOffsetCurve2D as underlying AxisCurve supports this concept.

Attribute definitions
#AttributeTypeCardinalityDescription A
1AxisTag- This attribute is out of scope for this model view definition and shall not be set.
2AxisCurveIfcCurve[1:1] Underlying curve which provides the geometry for this grid axis.X
3SameSenseIfcBoolean[1:1] Defines whether the original sense of curve is used or whether it is reversed in the context of the grid axis.X
PartOfWIfcGrid
@WAxes
S[0:1] If provided, the IfcGridAxis is part of the WAxes of IfcGrid.
PartOfVIfcGrid
@VAxes
S[0:1] If provided, the IfcGridAxis is part of the VAxes of IfcGrid.
PartOfUIfcGrid
@UAxes
S[0:1] If provided, the IfcGridAxis is part of the UAxes of IfcGrid.
HasIntersectionsIfcVirtualGridIntersection
@IntersectingAxes
S[0:?] The reference to a set of 's, that connect other grid axes to this grid axis.
Formal Propositions
RuleDescription
WR1The dimensionality of the grid axis is 2.
WR2 The IfcGridAxis needs to be used by exactly one of the three attributes of IfcGrid:
  • UAxes
  • VAxes
  • WAxes
i.e. it can only refer to a single instance of IfcGrid in one of the three list of axes.
Inherited definitions from supertypes
Entity inheritance
Attribute inheritance
#AttributeTypeCardinalityDescriptionA
IfcGridAxis
1AxisTag- This attribute is out of scope for this model view definition and shall not be set.
2AxisCurveIfcCurve[1:1] Underlying curve which provides the geometry for this grid axis.X
3SameSenseIfcBoolean[1:1] Defines whether the original sense of curve is used or whether it is reversed in the context of the grid axis.X
PartOfWIfcGrid
@WAxes
S[0:1] If provided, the IfcGridAxis is part of the WAxes of IfcGrid.
PartOfVIfcGrid
@VAxes
S[0:1] If provided, the IfcGridAxis is part of the VAxes of IfcGrid.
PartOfUIfcGrid
@UAxes
S[0:1] If provided, the IfcGridAxis is part of the UAxes of IfcGrid.
HasIntersectionsIfcVirtualGridIntersection
@IntersectingAxes
S[0:?] The reference to a set of 's, that connect other grid axes to this grid axis.
Formal representations
XSD Specification
 <xs:element name="IfcGridAxis" type="ifc:IfcGridAxis" substitutionGroup="ifc:Entity" nillable="true"/>
 <xs:complexType name="IfcGridAxis">
  <xs:complexContent>
   <xs:extension base="ifc:Entity">
    <xs:sequence>
     <xs:element name="AxisCurve" type="ifc:IfcCurve" nillable="true"/>
    </xs:sequence>
    <xs:attribute name="SameSense" type="ifc:IfcBoolean" use="optional"/>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>
EXPRESS Specification
ENTITY IfcGridAxis;
  AxisTag : OPTIONAL IfcStrippedOptional;
  AxisCurve : IfcCurve;
  SameSense : IfcBoolean;
 INVERSE
  PartOfW : SET [0:1] OF IfcGrid FOR WAxes;
  PartOfV : SET [0:1] OF IfcGrid FOR VAxes;
  PartOfU : SET [0:1] OF IfcGrid FOR UAxes;
  HasIntersections : SET [0:?] OF IfcVirtualGridIntersection FOR IntersectingAxes;
 WHERE
  WR1 : AxisCurve.Dim = 2;
  WR2 : (SIZEOF(PartOfU) = 1) XOR (SIZEOF(PartOfV) = 1) XOR (SIZEOF(PartOfW) = 1);
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

Link to this page  Link to this page