Navigation
Navigate Navigate Navigate Navigate Navigate

IfcRepresentationContextSameWCS

Definition from IAI: If there are several instances of IfcGeometricRepresentationContext within one project file, the XY plane of all WorldCoordinateSystem's shall be coplanar and identical.

NOTE  The instances of IfcGeometricRepresentationContext do not define their own world coordinate system, the refer to the world coordinate system of the ParentContext.
HISTORY  New global rule in Release IFC2x

EXPRESS specification:

RULE IfcRepresentationContextSameWCS FOR
( IfcGeometricRepresentationContext);
LOCAL
  IsDifferent  : LOGICAL := FALSE;
END_LOCAL;
  IF (SIZEOF(IfcGeometricRepresentationContext) > 1)
  THEN
    REPEAT i := 2 TO HIINDEX(IfcGeometricRepresentationContext);
      IF (IfcGeometricRepresentationContext[1].WorldCoordinateSystem :<>: IfcGeometricRepresentationContext[i].WorldCoordinateSystem)
      THEN
        IsDifferent := (NOT(IfcSameValidPrecision(IfcGeometricRepresentationContext[1].Precision,
                                                  IfcGeometricRepresentationContext[i].Precision)))
                    OR (NOT(IfcSameAxis2Placement(IfcGeometricRepresentationContext[1].WorldCoordinateSystem,
                                                  IfcGeometricRepresentationContext[i].WorldCoordinateSystem,
                                                  IfcGeometricRepresentationContext[1].Precision)));
        IF (IsDifferent = TRUE) THEN
          ESCAPE;
        END_IF;
      END_IF;
    END_REPEAT;
  END_IF;
WHERE
WR1  :  IsDifferent = FALSE;
END_RULE;