Synopsis

PDX_MSGT gdx_MakeNurbCurveG1Cont(long option, T_GDX_NURB_CURVE *cur, double sintol, double dev_tol, PDX_BOOL *smoothed)

Purpose

Make a Nurbs curve G1-continuous.

Description

This routine forces a Nurbs curve to be G1-continuous to within a specified sine tolerance. It checks for continuity only at internal knots. If tangent directions from the left and right differ by more than the specified tolerance, the knot is removed one time, as long as the shape changes stayed within dev_tol.

If NURBS curve is not G1 discontinuous, nothing is done to the curve.

Input

option

Not used.

cur

The curve to be checked.

sintol

The sine tolerance.

dev_tol

The deviation tolerance

Output

cur

The curve pointer does not change, but the contents of its knot and control point arrays may change.

smoothed

The flag indicates if the curve is modified.

Return

      GDX_NOERR
      Low level error return
      .fi