FUNCTION valid_geometrically_bounded_wf_curve

(* SCHEMA step_merged_ap_schema; *)
-- IN AP203e2/AP214/AP232/AP238 STEP-NC/AP242
FUNCTION valid_geometrically_bounded_wf_curve
      (crv : curve ) : BOOLEAN;
      IF SIZEOF([ 'STEP_MERGED_AP_SCHEMA.POLYLINE', 'STEP_MERGED_AP_SCHEMA.B_SPLINE_CURVE', 'STEP_MERGED_AP_SCHEMA.ELLIPSE', 'STEP_MERGED_AP_SCHEMA.CIRCLE' ] * TYPEOF(crv)) = 1 THEN
         RETURN (TRUE);
      ELSE
         IF 'STEP_MERGED_AP_SCHEMA.TRIMMED_CURVE' IN TYPEOF(crv) THEN
            IF SIZEOF([ 'STEP_MERGED_AP_SCHEMA.LINE', 'STEP_MERGED_AP_SCHEMA.PARABOLA', 'STEP_MERGED_AP_SCHEMA.HYPERBOLA' ] * TYPEOF(crv\trimmed_curve.basis_curve)) = 1 THEN
               RETURN (TRUE);
            ELSE
               RETURN (valid_geometrically_bounded_wf_curve(crv\trimmed_curve.basis_curve));
            END_IF;
         ELSE
            IF 'STEP_MERGED_AP_SCHEMA.OFFSET_CURVE_3D' IN TYPEOF(crv) THEN
               RETURN (valid_geometrically_bounded_wf_curve(crv\offset_curve_3d.basis_curve));
            ELSE
               IF 'STEP_MERGED_AP_SCHEMA.CURVE_REPLICA' IN TYPEOF(crv) THEN
                  RETURN (valid_geometrically_bounded_wf_curve(crv\curve_replica.parent_curve));
               ELSE
                  IF 'STEP_MERGED_AP_SCHEMA.COMPOSITE_CURVE' IN TYPEOF(crv) THEN
                     RETURN (SIZEOF(QUERY (ccs <* crv\composite_curve.segments| NOT valid_geometrically_bounded_wf_curve(ccs.parent_curve))) = 0);
                  END_IF;
               END_IF;
            END_IF;
         END_IF;
      END_IF;
      RETURN (FALSE);
END_FUNCTION;

Referenced By

Defintion valid_geometrically_bounded_wf_curve is references by the following definitions:
DefinitionType
 geometrically_bounded_wireframe_shape_representation ENTITY
 valid_geometrically_bounded_wf_point FUNCTION


[Top Level Definitions] [Exit]

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