src/limn/splineEval.c File Reference

#include "limn.h"

Include dependency graph for splineEval.c:


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 Documentation

#define _BCCUBIC ( x,
B,
 ) 

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 Documentation

typedef void(* _limnSplineFinish_t)(double *, limnSpline *, int, double *)

typedef void(* _limnSplineIntervalFind_t)(int *, double *, limnSpline *, double)

typedef void(* _limnSplineWeightsFind_t)(double *, limnSpline *, double)


Function Documentation

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 
)


Variable Documentation

_limnSplineFinish_t _limnSplineFinish[LIMN_SPLINE_INFO_MAX+1]

Initial value:

 {
  _limnSplineIntervalFind_Unknown,
  _limnSplineIntervalFind_NonWarp,
  _limnSplineIntervalFind_Warp,
  _limnSplineIntervalFind_NonWarp,
  _limnSplineIntervalFind_NonWarp,
  _limnSplineIntervalFind_NonWarp
}


Generated on Sat May 9 03:55:25 2009 for Teem by  doxygen 1.5.9