# Synopsis

PDX_MSGT gdx_GetNurbSurfContBounds(long option, MDA_PTR db_ptr, double *cont_toler, int cont_deg, long *num_of_bounds, double (**bounds)[2][2])

# Purpose

Determine the GDX NURB Surface continuity bounds

# Description

Given a GDX NURB Surface, determines the set of surface patch bounds that are continuous to degree cont_deg within cont_toler tolerances. If the surface is continuous everywhere than num_of_bounds will be 1 and the bounds values will be the bounds of the GDX NURB Surface. If the surface contains discontinuities, then num_of_bounds will indicate the number of continuous patches and the bounds values will be the subsegement bounds that are continuous within the original surface bounds. The bound values can be used to extract the continuous patches of the surface (See gdx__ExtractSubNurbSurfUtil).

The memory to contain the bounds is allocated by this function and must be freed by the caller.

# Input

## option

### GDX_GTEST

Perform G continuity test for continuity degree less than 3

## db_ptr

The database pointer of the GDX NURB Surface

## cont_toler

The continuity tolerances .nf [0] = Model space distance (G0) [1] = Radian angle difference (G1) [2] = Curvature difference (G2) [3] = Normalized derivative distance .fi

## cont_deg

The degree of continuity required

# Output

## num_of_bounds

The number of continuous surface patch bounds

## bounds

The set of continuous patch UV bounds values where bounds[0][0] equals the low U bound, bounds[0][1] equals the high U bound, bounds[1][0] equals the low V bound and bounds[1][1] equals the high V bound. This allocated memory must be freed by the caller.

# Tolerances

          ZERO_TOL
          NORMAL_MAG_TOL
          MODEL_SPACE_PNT_TOL
          .fi

# Return

          GDX_NOERR
          Low level error return
          .fi