IfcSameValidPrecision

Semantic definitions at the function
Function Definition

The function compares the epsilon values (given as Precision at IfcGeometricRepresentationContext and ensures that they are the same (with a derivation tolerance) and within reasonable min and max values.

NOTE  In the above function the following three questionable ad-hoc values are used:
    • 0.000001 for the default precision (1E-6)
    • 1.001 for the allowable deviation of the precision values and
    • 0.1 for setting the upper limit of the accepted precision values to about 0.1.
HISTORY  New function in IFC2x2

Formal representations
EXPRESS Specification

FUNCTION IfcSameValidPrecision
   (Epsilon1, Epsilon2 : REAL) : LOGICAL ;
  LOCAL
    ValidEps1, ValidEps2 : REAL;
    DefaultEps           : REAL := 0.000001;
    DerivationOfEps      : REAL := 1.001;
    UpperEps             : REAL := 1.0;
  END_LOCAL;
  
    ValidEps1 := NVL(Epsilon1, DefaultEps);
    ValidEps2 := NVL(Epsilon2, DefaultEps);
    RETURN ((0.0 < ValidEps1) AND (ValidEps1 <= (DerivationOfEps * ValidEps2)) AND
            (ValidEps2 <= (DerivationOfEps * ValidEps1)) AND (ValidEps2 < UpperEps));

END_FUNCTION;

Link to this page  Link to this page