Navigation

build_transformed_set

EXPRESS specification:

FUNCTION build_transformed_set
(* Modified for LPM/6 *)(tr: cartesian_transformation_operator;
          gset : geometric_set) : SET [0:?] OF geometric_set_select;
  LOCAL
   s          : SET [1:?] OF geometric_set_select := gset.elements;
   trset      : SET [0:?] OF geometric_set_select := [];
  END_LOCAL;
  REPEAT j := 1 TO SIZEOF(s);
   IF ('STRUCTURAL_FRAME_SCHEMA.CURVE' IN TYPEOF(s[j])) THEN
     trset := trset + dummy_gri || curve() ||curve_replica(s[j],tr); ELSE
     IF ('STRUCTURAL_FRAME_SCHEMA.POINT' IN TYPEOF(s[j])) THEN
       trset := trset + dummy_gri || point() || point_replica(s[j],tr);
       ELSE
       IF ('STRUCTURAL_FRAME_SCHEMA.SURFACE' IN TYPEOF(s[j])) THEN
         trset := trset + dummy_gri || surface() || surface_replica(s[j],
           tr || cartesian_transformation_operator_3d (?));
       END_IF;
      END_IF;
    END_IF;
   END_REPEAT;
   RETURN(trset);
END_FUNCTION;