45 #ifndef vpTemplateTrackerMIBSpline_hh 46 #define vpTemplateTrackerMIBSpline_hh 48 #include <visp3/core/vpConfig.h> 50 #include <visp3/core/vpImage.h> 51 #include <visp3/core/vpMath.h> 52 #include <visp3/tt/vpTemplateTrackerBSpline.h> 53 #include <visp3/tt/vpTemplateTrackerHeader.h> 55 #include <visp3/tt_mi/vpTemplateTrackerMI.h> 57 #ifndef DOXYGEN_SHOULD_SKIP_THIS 59 class VISP_EXPORT vpTemplateTrackerMIBSpline
62 static void PutPVBsplineD(
double *Prt,
int cr,
double er,
int ct,
double et,
int Nc,
double val,
const int °re);
63 static void PutPVBsplineD3(
double *Prt,
int cr,
double er,
int ct,
double et,
int Nc,
double val);
64 static void PutPVBsplineD4(
double *Prt,
int cr,
double er,
int ct,
double et,
int Nc,
double val);
66 static void PutTotPVBspline(
double *Prt,
int cr,
double &er,
int ct,
double &et,
int Nc,
double *val,
67 unsigned int &NbParam,
int °ree);
68 static void PutTotPVBspline(
double *Prt,
double *dPrt,
double *d2Prt,
int cr,
double &er,
int ct,
double &et,
int Ncb,
69 double *val,
unsigned int &NbParam,
int °ree);
70 static void PutTotPVBspline3(
double *Prt,
int cr,
double &er,
int ct,
double &et,
int Nc,
double *val,
71 unsigned int &NbParam);
72 static void PutTotPVBspline3(
double *Prt,
double *dPrt,
double *d2Prt,
int cr,
double &er,
int ct,
double &et,
73 int Ncb,
double *val,
unsigned int &NbParam);
74 static void PutTotPVBspline4(
double *Prt,
int cr,
double er,
int ct,
double et,
int Nc,
double *val,
75 unsigned int &NbParam);
76 static void PutTotPVBspline4(
double *Prt,
double *dPrt,
double *d2Prt,
int cr,
double er,
int ct,
double et,
int Ncb,
77 double *val,
unsigned int &NbParam);
80 static void PutTotPVBspline3(
double *Prt,
double &er,
double *et,
unsigned int NbParam);
81 static void PutTotPVBspline4(
double *Prt,
double &er,
double *et,
unsigned int NbParam);
84 static void PutTotPVBsplineNoSecond(
double *Prt,
int &cr,
double &er,
int &ct,
double &et,
int &Nc,
double *val,
85 unsigned int &NbParam,
int °ree);
86 static void PutTotPVBsplineNoSecond(
double *Prt,
double *dPrt,
int &cr,
double &er,
int &ct,
double &et,
int &Ncb,
87 double *val,
unsigned int &NbParam,
int °ree);
88 static void PutTotPVBspline3NoSecond(
double *Prt,
int &cr,
double &er,
int &ct,
double &et,
int &Nc,
double *val,
89 unsigned int &NbParam);
90 static void PutTotPVBspline3NoSecond(
double *Prt,
double *dPrt,
int &cr,
double &er,
int &ct,
double &et,
int &Ncb,
91 double *val,
unsigned int &NbParam);
92 static void PutTotPVBspline4NoSecond(
double *Prt,
int &cr,
double &er,
int &ct,
double &et,
int &Nc,
double *val,
93 unsigned int &NbParam);
94 static void PutTotPVBspline4NoSecond(
double *Prt,
double *dPrt,
int &cr,
double &er,
int &ct,
double &et,
int &Ncb,
95 double *val,
unsigned int &NbParam);
97 static void PutTotPVBsplinePrtTout(
double *Prt,
int &cr,
double &er,
int &ct,
double &et,
int &Nc,
98 unsigned int &NbParam,
int °ree);
99 static void PutTotPVBspline3PrtTout(
double *Prt,
int &cr,
double &er,
int &ct,
double &et,
int &Nc,
100 unsigned int &NbParam);
101 static void PutTotPVBspline4PrtTout(
double *Prt,
int &cr,
double &er,
int &ct,
double &et,
int &Nc,
102 unsigned int &NbParam);
104 static void PutTotPVBsplinePrt(
double *Prt,
int &cr,
double &er,
int &ct,
double &et,
int &Ncb,
unsigned int &NbParam,
106 static void PutTotPVBspline3Prt(
double *Prt,
int &cr,
double &er,
int &ct,
double &et,
int &Ncb);
107 static void PutTotPVBspline4Prt(
double *Prt,
int &cr,
double &er,
int &ct,
double &et,
int &Ncb);
109 static double Bspline3(
double diff);
110 static double Bspline4i(
double diff,
int &interv);
112 static double dBspline3(
double diff);
113 static double dBspline4(
double diff);
115 static double d2Bspline3(
double diff);
116 static double d2Bspline4(
double diff);