FUNCTION gbsf_check_surface

(* SCHEMA integrated_cnc_schema; *)
FUNCTION gbsf_check_surface (
    sf : surface 
    ) : BOOLEAN;
    IF ('INTEGRATED_CNC_SCHEMA.B_SPLINE_SURFACE' IN TYPEOF(sf)) AND (sf\
      b_spline_surface.self_intersect = FALSE) OR (sf\b_spline_surface.
      self_intersect = UNKNOWN) THEN
      RETURN (TRUE);
    ELSE
      IF SIZEOF([ 'INTEGRATED_CNC_SCHEMA.SPHERICAL_SURFACE', 
        'INTEGRATED_CNC_SCHEMA.TOROIDAL_SURFACE', 
        'INTEGRATED_CNC_SCHEMA.CURVE_BOUNDED_SURFACE', 
        'INTEGRATED_CNC_SCHEMA.RECTANGULAR_TRIMMED_SURFACE' ] * TYPEOF(sf))
         = 1 THEN
        RETURN (TRUE);
      ELSE
        IF ('INTEGRATED_CNC_SCHEMA.OFFSET_SURFACE' IN TYPEOF(sf)) AND (sf\
          offset_surface.self_intersect = FALSE) OR (sf\offset_surface.
          self_intersect = UNKNOWN) THEN
          RETURN (gbsf_check_surface(sf\offset_surface.basis_surface));
        ELSE
          IF 'INTEGRATED_CNC_SCHEMA.RECTANGULAR_COMPOSITE_SURFACE' IN 
            TYPEOF(sf) THEN
            REPEAT i := 1 TO SIZEOF(sf\rectangular_composite_surface.
              segments);
              REPEAT j := 1 TO SIZEOF(sf\rectangular_composite_surface.
                segments[i]);
                IF NOT gbsf_check_surface(sf\rectangular_composite_surface.
                  segments[i][j].parent_surface) THEN
                  RETURN (FALSE);
                END_IF;
              END_REPEAT;
            END_REPEAT;
            RETURN (TRUE);
          ELSE
            IF 'INTEGRATED_CNC_SCHEMA.SURFACE_REPLICA' IN TYPEOF(sf) THEN
              RETURN (gbsf_check_surface(sf\surface_replica.parent_surface)
                );
            ELSE
              IF 'INTEGRATED_CNC_SCHEMA.SURFACE_OF_REVOLUTION' IN TYPEOF(sf
                ) THEN
                RETURN (gbsf_check_curve(sf\swept_surface.swept_curve));
              END_IF;
            END_IF;
          END_IF;
        END_IF;
      END_IF;
    END_IF;
    RETURN (FALSE);
END_FUNCTION; -- 10303-507: aic_geometrically_bounded_surface

Referenced By

Defintion gbsf_check_surface is references by the following definitions:
DefinitionType
 gbsf_check_curve FUNCTION
 gbsf_check_point FUNCTION
 geometrically_bounded_surface_shape_representation ENTITY


[Top Level Definitions]

Generated by STEP ToolsTM EXPRESS to HTML Converter
on 2010-01-12T10:42:25-02:00