Synopsis

PDX_MSGT igeo_EvalSurfaceDerivs(long option, MDA_PTR db_ptr, IMTH_MATRIX matrix, double uval, double vval, int max_derivs, double (**derivs)[3])

Purpose

Evaluate derivatives on an IGES surface entity

Description

At a given U and V parameter value between 0.0 and 1.0 inclusive, evaluate derivatives on an IGES surface entity. The derivs array, derivs[j][i][3], returned is for all i, j such that:

             0 <= i + j <= max_derivs.

derivs[j][i][3] corresponds to the x, y, and z components of the derivative of the surface at uval, vval taken with respect to u i times and with respect to v j times (i.e., derivs[0][0][3] corresponds to the point on the surface and derivs[0][1][3] corresponds to the partial derivative with respect to u, etc.). Therefore, a max_derivs of 0 is equivalent to simply evaluating a point on the IGES surface entity.

The IGES surface entity must be a valid IGES definition. The derivatives can be evaluated from the left or right. The @a derivs array MUST be dimensioned to [max_derivs + 1][GDX_MAX_DEG + 1][3].

Input

option

IGEO_FROMLEFT

Evaluate derivatives from the left

IGEO_FROMLOW

Evaluate derivatives from the low parameter direction

db_ptr

The IGES surface entity database pointer

matrix

The matrix to apply to the evaluated derivatives

uval

The surface U parameter value to evaluate (0.0 to 1.0)

vval

The surface V parameter value to evaluate (0.0 to 1.0)

max_derivs

The maximium derivative required

Output

derivs

The 3D mixed partial derivatives

Return

      IGEO_NOERR
      Low level error return
      .fi