# Synopsis

PDX_MSGT gdx_SolidMakeModelCurveG1Cont(long option, double approx_tol, int maxits, int degree, MDA_PTR gdx_solid_ptr, PDX_BOOL *smoothed)

# Purpose

Smooth all G1 discontinuous Curves

# Description

Cycle through the faces of the solid to detect model curves which have G1 discontinuities. If the curve is G1 discontinuous, then convert it to NURB and smooth it by calling the function gdx_MakeNurbCurveG1Cont. The argument approx_tol is used to convert G1 discontiuous curves to NURBS. The smoothing can only be performed for NURB curves. When the curves gets smoothed, the parm curves of the associated edge_curve get deleted. For more information on the conversion to NURBS and the smoothing, look at the functions gdx_ConvertCurveToNurbCurve and gdx_MakeNurbCurveG1Cont.

# Input

## option

Options (Not Used)

## approx_tol

Nurb approximation tolerance

## maxits

Maximum number of iterations to use when converting curves to NURBS. Iteration will stop when number is exceeded.

## degree

Degree of converted curve

## gdx_solid_ptr

GDX Solid which may contain G1 discontinuous surfaces

# Output

## gdx_solid_ptr

An updated GDX solid without G1 discontinuous surfaces

## smoothed

At least one Face of solid had G1 discontinuity smoothed

# Tolerances

          MODEL_SPACE_PNT_TOL
          NORMAL_MAG_TOL
          ANGLE_TOL
          .fi

# Return

          GDX_NOERR
          GDX_INVALIDMODEL
          Low level error return
          .fi