00001 #ifndef CAJUN_SPLINE_H
00002 #define CAJUN_SPLINE_H
00003
00004 #include <vector>
00005
00006 namespace cajun
00007 {
00009 typedef std::vector< std::vector< std::vector <double> > > spline_curve_t;
00010
00011 class spline_t
00012 {
00013 public:
00014 static void spline_init (spline_curve_t &myc,
00015 const double spline_pts_[12]);
00016 static void spline_point (double pt[3], const spline_curve_t &spline_curve, double s);
00017 private:
00023 static void CubicSplineCoefficientEQ0 (std::vector< std::vector<double> > &myc, int myn,
00024 int mybeg, int myend);
00025 };
00026 };
00027
00028
00029 #endif