FUNCTION check_associative_shape_aspects

(* SCHEMA AUTOMOTIVE_DESIGN; *)
 
FUNCTION check_associative_shape_aspects(sdr : shape_definition_representation)
   : BOOLEAN;
LOCAL
  sr1 : SET OF representation;
  sr2 : SET OF representation;
  dm : SET OF representation;
  pv : SET OF representation;
END_LOCAL;
  IF SIZEOF(sdr.used_representation.items) <> 2 THEN
    RETURN (FALSE);
  END_IF;
  sr1 := using_representations(sdr.used_representation.items[1]);
  sr2 := using_representations(sdr.used_representation.items[2]);
  REPEAT i := 1 TO HIINDEX(sr1);
    dm := representations_mapped_into(sr1[i]);
    REPEAT j := 1 TO HIINDEX(dm);
      IF 'AUTOMOTIVE_DESIGN.DRAUGHTING_MODEL' IN TYPEOF(dm[j]) THEN
        IF dm[j] IN sr2 THEN
          RETURN (TRUE);
        END_IF;
        pv := representations_mapped_into(dm[j]);
        REPEAT k := 1 TO HIINDEX(pv);
          IF 'AUTOMOTIVE_DESIGN.PRESENTATION_VIEW' IN TYPEOF(pv[k]) THEN
            IF pv[k] IN sr2 THEN
              RETURN (TRUE);
            END_IF;
          END_IF;
        END_REPEAT;
      END_IF;
    END_REPEAT;
  END_REPEAT;
  REPEAT i := 1 TO HIINDEX(sr2);
    dm := representations_mapped_into(sr2[i]);
    REPEAT j := 1 TO HIINDEX(dm);
      IF 'AUTOMOTIVE_DESIGN.DRAUGHTING_MODEL' IN TYPEOF(dm[j]) THEN
        IF dm[j] IN sr1 THEN
          RETURN (TRUE);
        END_IF;
        pv := representations_mapped_into(dm[j]);
        REPEAT k := 1 TO HIINDEX(pv);
          IF 'AUTOMOTIVE_DESIGN.PRESENTATION_VIEW' IN TYPEOF(pv[k]) THEN
            IF pv[k] IN sr1 THEN
              RETURN (TRUE);
            END_IF;
          END_IF;
        END_REPEAT;
      END_IF;
    END_REPEAT;
  END_REPEAT;
  RETURN (FALSE);
END_FUNCTION; (* declared in: aic_associative_draughting_elements *)

Referenced By

Defintion check_associative_shape_aspects is references by the following definitions:
DefinitionType
 shape_aspect_associativity ENTITY


[Top Level Definitions] [Exit]

Generated by STEP Tools® EXPRESS to HTML Converter
2012-03-27T17:16:12-04:00