FUNCTION get_basis_surface

(* SCHEMA step_merged_ap_schema; *)
-- DIFF IN AP224
-- DIFF IN AP232
FUNCTION get_basis_surface
      (c : curve_on_surface ) : SET [0:2] OF surface;
   LOCAL
      surfs : SET [0:2] OF surface;
      n : INTEGER;
   END_LOCAL;
      surfs := [];
      IF 'STEP_MERGED_AP_SCHEMA.PCURVE' IN TYPEOF(c) THEN
         surfs := [ c\pcurve.basis_surface ];
      ELSE
         IF 'STEP_MERGED_AP_SCHEMA.SURFACE_CURVE' IN TYPEOF(c) THEN
            n := SIZEOF(c\surface_curve.associated_geometry);
            REPEAT i := 1 TO n;
               surfs := surfs + associated_surface(c\surface_curve.associated_geometry[i]);
            END_REPEAT;
         END_IF;
      END_IF;
      IF 'STEP_MERGED_AP_SCHEMA.COMPOSITE_CURVE_ON_SURFACE' IN TYPEOF(c) THEN
         n := SIZEOF(c\composite_curve.segments);
         surfs := get_basis_surface(c\composite_curve.segments[1].parent_curve);
         IF n > 1 THEN
            REPEAT i := 2 TO n;
               surfs := surfs * get_basis_surface(c\composite_curve.segments[i].parent_curve);
            END_REPEAT;
         END_IF;
      END_IF;
      RETURN (surfs);
END_FUNCTION;

Referenced By

Defintion get_basis_surface is references by the following definitions:
DefinitionType
 composite_curve_on_surface ENTITY
 surface_curve ENTITY


[Top Level Definitions] [Exit]

Generated by STEP Tools® EXPRESS to HTML Converter
2020-07-28T17:02:20-04:00