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:
[Top Level Definitions] [Exit]Generated by STEP Tools® EXPRESS to HTML Converter
2020-07-28T17:02:20-04:00