AECgeeks / infra-repo-issue-test-2

0 stars 0 forks source link

Small rule changes from IFC Specification 281 #3

Open aothms opened 2 years ago

aothms commented 2 years ago

See https://github.com/bSI-InfraRoom/IFC-Specification/issues/281

aothms commented 2 years ago
--- tmp/a/IFC.exp   2022-08-26 21:51:00.375350900 +0200
+++ tmp/b/IFC.exp   2022-09-05 20:17:25.810401000 +0200
@@ -13215,21 +13215,21 @@

     Mag := 0.0;
       REPEAT i := 1 TO Ndim;
         Mag := Mag + V.DirectionRatios[i]*V.DirectionRatios[i];
       END_REPEAT;
     IF Mag > 0.0 THEN
       Mag := SQRT(Mag);
       REPEAT i := 1 TO Ndim;
         V.DirectionRatios[i] := V.DirectionRatios[i]/Mag;
       END_REPEAT;
-      IF 'IFC4X3_DEV.IFCVECTOR' IN TYPEOF(arg) THEN
+      IF 'IFC4X3_DEV.IFCVECTOR' IN TYPEOF(Arg) THEN
         Vec.Orientation := V;
         Result := Vec;
       ELSE
         Result := V;
       END_IF;
     ELSE
       RETURN(?);
     END_IF;
   END_IF;
   RETURN (Result);
@@ -13299,21 +13299,21 @@
   RETURN (?);

 END_FUNCTION;

 FUNCTION IfcSameAxis2Placement
   (ap1, ap2 : IfcAxis2Placement; Epsilon : REAL)
   : LOGICAL ;

   RETURN (IfcSameDirection(ap1.P[1],ap2.P[1],Epsilon) AND
           IfcSameDirection(ap1.P[2],ap2.P[2],Epsilon) AND
-          IfcSameCartesianPoint(ap1.Location,ap1.Location,Epsilon));
+          IfcSameCartesianPoint(ap1.Location,ap2.Location,Epsilon));

 END_FUNCTION;

 FUNCTION IfcSameCartesianPoint
  (cp1, cp2 : IfcCartesianPoint; Epsilon : REAL)
  : LOGICAL;

   LOCAL
     cp1x : REAL := cp1.Coordinates[1];
     cp1y : REAL := cp1.Coordinates[2];