PK_CURVE_general_eval_f_t   

typedef PK_ERROR_code_t(*PK_CURVE_general_eval_f_t)
(
--- received arguments ---
double                   parameter,      --- parameter at which to evaluate
int                      n_deriv,        --- number of derivatives requested
PK_HAND_t                hand_direction, --- evaluation direction
PK_POINTER_t             external_data,  --- external application data
--- returned arguments ---
double            *const derivs          --- point and derivatives
);



This is the type definition for the external evaluator functions expected
by PK_BCURVE_create_fitted.  The functions themselves are to be
provided by the application.


Used in:

PK_CURVE_general_user_t


Given a 'parameter' a function of type 'PK_CURVE_general_eval_f_t' should
return the point and, optionally, derivatives of the function at 'parameter'.

If 'n_deriv' is 0 then only the point will be returned in `derivs[0]' . . .
`derivs[dim-1]', where dim is the dimension of the general curve.
If 'n_deriv' is greater than 0 then `derivs[i*dim]' . . . `derivs[(i+1)*dim-1]'
will contain the i'th derivative of the general curve. Note that the
current Parasolid fitting algorithm will not request derivatives.

The 'external_data' should be supplied to Parasolid via the
'PK_CURVE_general_eval_data_t' structure.

Functions of this type should return 'PK_ERROR_no_errors' on success.  Any
other return value will be taken to be an evaluation failure and the return
arguments will not be examined.  In these circumstances, a value of
'PK_BCURVE_fit_eval_failure_c' will be returned in the 'status' field of
'PK_BCURVE_fitted_fault_t' 'fault' structure returned by
PK_BCURVE_create_fitted.