FUNCTION get_plane_of_implicit_geometry

(* SCHEMA step_merged_ap_schema; *)
-- IN AP242
FUNCTION get_plane_of_implicit_geometry
      (ps : positioned_sketch ) : plane;
   LOCAL
      sb : sketch_basis_select := ps.sketch_basis;
      result : plane := ?;
   END_LOCAL;
      IF 'STEP_MERGED_AP_SCHEMA.FACE_SURFACE' IN TYPEOF(sb) THEN
         result := sb\face_surface.face_geometry;
      ELSE
         IF 'STEP_MERGED_AP_SCHEMA.CURVE_BOUNDED_SURFACE' IN TYPEOF(sb) THEN
            result := sb\curve_bounded_surface.basis_surface;
         ELSE
            IF 'STEP_MERGED_AP_SCHEMA.PLANAR_CURVE_SELECT' IN TYPEOF(sb) THEN
               BEGIN
                  IF 'STEP_MERGED_AP_SCHEMA.CONIC' IN TYPEOF(sb) THEN
                     result := dummy_gri || surface() || elementary_surface(sb\conic.position) || plane();
                  END_IF;
                  IF 'STEP_MERGED_AP_SCHEMA.TRIMMED_CURVE' IN TYPEOF(sb) THEN
                     BEGIN
                        result := get_plane_of_implicit_geometry(dummy_gri || positioned_sketch(sb\trimmed_curve.basis_curve, []));
                     END;
                  END_IF;
                  IF 'STEP_MERGED_AP_SCHEMA.PCURVE' IN TYPEOF(sb) THEN
                     result := sb\pcurve.basis_surface;
                  END_IF;
                  IF 'STEP_MERGED_AP_SCHEMA.SURFACE_CURVE' IN TYPEOF(sb) THEN
                     BEGIN
                        IF (SIZEOF(sb\surface_curve.basis_surface) = 1) AND ('STEP_MERGED_AP_SCHEMA.PLANE' IN TYPEOF(sb\surface_curve.basis_surface[1])) THEN
                           result := sb\surface_curve.basis_surface[1];
                        ELSE
                           IF ('STEP_MERGED_AP_SCHEMA.PLANE' IN TYPEOF(sb\surface_curve.basis_surface[1])) AND ('STEP_MERGED_AP_SCHEMA.PLANE' IN TYPEOF(sb\surface_curve.basis_surface[2])) THEN
                              result := ?;
                           ELSE
                              IF 'STEP_MERGED_AP_SCHEMA.PLANE' IN TYPEOF(sb\surface_curve.basis_surface[1]) THEN
                                 result := sb\surface_curve.basis_surface[1];
                              ELSE
                                 result := sb\surface_curve.basis_surface[2];
                              END_IF;
                           END_IF;
                        END_IF;
                     END;
                  END_IF;
               END;
            END_IF;
         END_IF;
      END_IF;
      RETURN (result);
END_FUNCTION;

Referenced By

Defintion get_plane_of_implicit_geometry is references by the following definitions:
DefinitionType
 implicit_planar_curve ENTITY
 implicit_point_on_plane ENTITY


[Top Level Definitions] [Exit]

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