|
FUNCTION check_associative_shape_aspects (sdr : shape_definition_representation) : BOOLEAN; LOCAL sr1 , sr2 : SET OF representation ; dm , 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 ( 'aic_associative_draughting_elements.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 ( 'aic_associative_draughting_elements.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 ( 'aic_associative_draughting_elements.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 ( 'aic_associative_draughting_elements.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; -- check_associative_shape_aspects |
|
public class FCheck_associative_shape_aspects public static Value run(SdaiContext _context, Value sdr) |