# Synopsis

PDX_MSGT gdx_NurbSurfThruNxMPoints(long option, int model, double ***pnts, long npu, long npv, int u_order, int v_order, double *u_pars, double *v_pars, double *u_knots, double *v_knots, T_GDX_NURB_SURF **gdx_ns)

# Purpose

Create GDX NURB Surface by interpolation fit of point data.

# Description

This routine does an interpolation surface fit to a mesh of point data. The surface passes precisely through the given set of points.

# Input

## option

### GDX_PARSKNOTS

If set, parameter values and knots are passed into this routine. If not, this routine will compute them (but not return them).

## model

The GDX model for entity creation.

## pnts

The rectangular mesh of data points to be fitted. The index order is: pnts[npv][npu][].

## npu

Number of data points in the u-direction.

## npv

Number of data points in the v-direction.

## u_order

Order of the b-spline surface in the u-direction (degree+1). u_order <= npu must hold.

## v_order

Order of the b-spline surface in the v-direction (degree+1). v_order <= npv must hold.

## u_pars

The npu u-direction parameter values (used only if GDX_PARSKNOTS is set).

## v_pars

The npv v-direction parameter values (used only if GDX_PARSKNOTS is set).

## u_knots

The u-knot vector (used only if GDX_PARSKNOTS is set).

## v_knots

The v-knot vector (used only if GDX_PARSKNOTS is set).

# Output

## gdx_ns

The GDX NURB Surface fitted to the data.

# Return

          GDX_NOERR
          GDX_BADDATA
          GDX_SINGULAREQS  (singular system of equations)
          Low level error return
          .fi