#include "limn.h"
Defines | |
#define | _BCCUBIC(x, B, C) |
Typedefs | |
typedef void(* | _limnSplineIntervalFind_t )(int *, double *, limnSpline *, double) |
typedef void(* | _limnSplineWeightsFind_t )(double *, limnSpline *, double) |
typedef void(* | _limnSplineFinish_t )(double *, limnSpline *, int, double *) |
Functions | |
void | _limnSplineIntervalFind_Unknown (int *ii, double *ff, limnSpline *spline, double tt) |
void | _limnSplineIntervalFind_NonWarp (int *ii, double *ff, limnSpline *spline, double tt) |
void | _limnSplineIntervalFind_Warp (int *ii, double *ff, limnSpline *spline, double tt) |
void | _limnSplineWeightsFind_Unknown (double *wght, limnSpline *spline, double f) |
void | _limnSplineWeightsFind_Linear (double *wght, limnSpline *spline, double f) |
void | _limnSplineWeightsFind_Hermite (double *wght, limnSpline *spline, double f) |
void | _limnSplineWeightsFind_CubicBezier (double *wght, limnSpline *spline, double f) |
void | _limnSplineWeightsFind_BC (double *wght, limnSpline *spline, double f) |
void | _limnSplineIndexFind (int *idx, limnSpline *spline, int ii) |
void | _limnSplineFinish_Unknown (double *out, limnSpline *spline, int ii, double *wght) |
void | _limnSplineFinish_Scalar (double *out, limnSpline *spline, int ii, double *wght) |
void | _limnSplineFinish_2Vec (double *out, limnSpline *spline, int ii, double *wght) |
void | _limnSplineFinish_3Vec (double *out, limnSpline *spline, int ii, double *wght) |
void | _limnSplineFinish_Normal (double *out, limnSpline *spline, int ii, double *wght) |
void | _limnSplineFinish_4Vec (double *out, limnSpline *spline, int ii, double *wght) |
void | _limnSplineFinish_Quaternion (double *out, limnSpline *spline, int ii, double *wght) |
void | limnSplineEvaluate (double *out, limnSpline *spline, double tt) |
int | limnSplineNrrdEvaluate (Nrrd *nout, limnSpline *spline, Nrrd *nin) |
int | limnSplineSample (Nrrd *nout, limnSpline *spline, double minT, size_t M, double maxT) |
Variables | |
_limnSplineIntervalFind_t | _limnSplineIntervalFind [LIMN_SPLINE_TYPE_MAX+1] |
_limnSplineWeightsFind_t | _limnSplineWeightsFind [LIMN_SPLINE_TYPE_MAX+1] |
_limnSplineFinish_t | _limnSplineFinish [LIMN_SPLINE_INFO_MAX+1] |
#define _BCCUBIC | ( | x, | |||
B, | |||||
C | ) |
Value:
((x) >= 2.0 ? 0 : \ ((x) >= 1.0 \ ? (((-B/6 - C)*(x) + B + 5*C)*(x) -2*B - 8*C)*(x) + 4*B/3 + 4*C \ : ((2 - 3*B/2 - C)*(x) - 3 + 2*B + C)*(x)*(x) + 1 - B/3))
typedef void(* _limnSplineFinish_t)(double *, limnSpline *, int, double *) |
typedef void(* _limnSplineIntervalFind_t)(int *, double *, limnSpline *, double) |
typedef void(* _limnSplineWeightsFind_t)(double *, limnSpline *, double) |
void _limnSplineFinish_2Vec | ( | double * | out, | |
limnSpline * | spline, | |||
int | ii, | |||
double * | wght | |||
) |
void _limnSplineFinish_3Vec | ( | double * | out, | |
limnSpline * | spline, | |||
int | ii, | |||
double * | wght | |||
) |
void _limnSplineFinish_4Vec | ( | double * | out, | |
limnSpline * | spline, | |||
int | ii, | |||
double * | wght | |||
) |
void _limnSplineFinish_Normal | ( | double * | out, | |
limnSpline * | spline, | |||
int | ii, | |||
double * | wght | |||
) |
void _limnSplineFinish_Quaternion | ( | double * | out, | |
limnSpline * | spline, | |||
int | ii, | |||
double * | wght | |||
) |
void _limnSplineFinish_Scalar | ( | double * | out, | |
limnSpline * | spline, | |||
int | ii, | |||
double * | wght | |||
) |
void _limnSplineFinish_Unknown | ( | double * | out, | |
limnSpline * | spline, | |||
int | ii, | |||
double * | wght | |||
) |
void _limnSplineIndexFind | ( | int * | idx, | |
limnSpline * | spline, | |||
int | ii | |||
) |
void _limnSplineIntervalFind_NonWarp | ( | int * | ii, | |
double * | ff, | |||
limnSpline * | spline, | |||
double | tt | |||
) |
void _limnSplineIntervalFind_Unknown | ( | int * | ii, | |
double * | ff, | |||
limnSpline * | spline, | |||
double | tt | |||
) |
void _limnSplineIntervalFind_Warp | ( | int * | ii, | |
double * | ff, | |||
limnSpline * | spline, | |||
double | tt | |||
) |
void _limnSplineWeightsFind_BC | ( | double * | wght, | |
limnSpline * | spline, | |||
double | f | |||
) |
void _limnSplineWeightsFind_CubicBezier | ( | double * | wght, | |
limnSpline * | spline, | |||
double | f | |||
) |
void _limnSplineWeightsFind_Hermite | ( | double * | wght, | |
limnSpline * | spline, | |||
double | f | |||
) |
void _limnSplineWeightsFind_Linear | ( | double * | wght, | |
limnSpline * | spline, | |||
double | f | |||
) |
void _limnSplineWeightsFind_Unknown | ( | double * | wght, | |
limnSpline * | spline, | |||
double | f | |||
) |
void limnSplineEvaluate | ( | double * | out, | |
limnSpline * | spline, | |||
double | tt | |||
) |
int limnSplineNrrdEvaluate | ( | Nrrd * | nout, | |
limnSpline * | spline, | |||
Nrrd * | nin | |||
) |
int limnSplineSample | ( | Nrrd * | nout, | |
limnSpline * | spline, | |||
double | minT, | |||
size_t | M, | |||
double | maxT | |||
) |
_limnSplineFinish_t _limnSplineFinish[LIMN_SPLINE_INFO_MAX+1] |
_limnSplineIntervalFind_t _limnSplineIntervalFind[LIMN_SPLINE_TYPE_MAX+1] |
Initial value:
{ _limnSplineIntervalFind_Unknown, _limnSplineIntervalFind_NonWarp, _limnSplineIntervalFind_Warp, _limnSplineIntervalFind_NonWarp, _limnSplineIntervalFind_NonWarp, _limnSplineIntervalFind_NonWarp }
_limnSplineWeightsFind_t _limnSplineWeightsFind[LIMN_SPLINE_TYPE_MAX+1] |
Initial value:
{ _limnSplineWeightsFind_Unknown, _limnSplineWeightsFind_Linear, _limnSplineWeightsFind_Hermite, _limnSplineWeightsFind_Hermite, _limnSplineWeightsFind_CubicBezier, _limnSplineWeightsFind_BC }