FUNCTION valid_geometrically_bounded_wf_curve
(* SCHEMA technical_data_packaging; *)
FUNCTION valid_geometrically_bounded_wf_curve(
crv: curve
): BOOLEAN;
IF SIZEOF(['TECHNICAL_DATA_PACKAGING.POLYLINE',
'TECHNICAL_DATA_PACKAGING.B_SPLINE_CURVE',
'TECHNICAL_DATA_PACKAGING.ELLIPSE',
'TECHNICAL_DATA_PACKAGING.CIRCLE'] * TYPEOF(crv)) = 1 THEN
RETURN(TRUE);
ELSE
IF 'TECHNICAL_DATA_PACKAGING.TRIMMED_CURVE' IN TYPEOF(crv) THEN
IF SIZEOF(['TECHNICAL_DATA_PACKAGING.LINE',
'TECHNICAL_DATA_PACKAGING.PARABOLA',
'TECHNICAL_DATA_PACKAGING.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 'TECHNICAL_DATA_PACKAGING.OFFSET_CURVE_3D' IN TYPEOF(crv) THEN
RETURN(valid_geometrically_bounded_wf_curve(crv\offset_curve_3d.
basis_curve));
ELSE
IF 'TECHNICAL_DATA_PACKAGING.CURVE_REPLICA' IN TYPEOF(crv) THEN
RETURN(valid_geometrically_bounded_wf_curve(crv\curve_replica.
parent_curve));
ELSE
IF 'TECHNICAL_DATA_PACKAGING.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; -- valid_geometrically_bounded_wf_curve
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
2012-03-27T17:18:35-04:00