FUNCTION valid_basis_curve_in_2d_wireframe

(* SCHEMA step_merged_ap_schema; *)
-- IN AP203e2/AP214/AP232/AP242
FUNCTION valid_basis_curve_in_2d_wireframe
      (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_basis_curve_in_2d_wireframe(crv\trimmed_curve.basis_curve));
            END_IF;
         ELSE
            IF 'STEP_MERGED_AP_SCHEMA.OFFSET_CURVE_2D' IN TYPEOF(crv) THEN
               RETURN (valid_basis_curve_in_2d_wireframe(crv\offset_curve_2d.basis_curve));
            ELSE
               IF 'STEP_MERGED_AP_SCHEMA.CURVE_REPLICA' IN TYPEOF(crv) THEN
                  RETURN (valid_basis_curve_in_2d_wireframe(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_basis_curve_in_2d_wireframe(ccs.parent_curve))) = 0);
                  END_IF;
               END_IF;
            END_IF;
         END_IF;
      END_IF;
      RETURN (FALSE);
END_FUNCTION;

Referenced By

Defintion valid_basis_curve_in_2d_wireframe is references by the following definitions:
DefinitionType
 geometrically_bounded_2d_wireframe_representation ENTITY


[Top Level Definitions] [Exit]

Generated by STEP Tools® EXPRESS to HTML Converter
2024-09-06T14:00:33-04:00