Representation Context Same WCS |
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 IfcGeometricRepresentationSubContext do not define their own world coordinate system, they refer to the world coordinate system of the ParentContext.
HISTORY New global rule in Release IFC2x
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;