#ifndef _COMMON_CATMULL_HPP_ #define _COMMON_CATMULL_HPP_ #ifndef _COMMON_WINDOWS_HPP_ #include #endif #ifndef _COMMON_GLOBALDATA_HPP_ #include #endif #ifndef _ANALYTIC_FLOATPAIRS_HPP_ #include #endif // Sample usage of the spline generator... // CarmullRom splineGen; // PureVector srcPairs; // PureVector dstPairs; // srcPairs[0]=FloatPairs(1.00,25); // srcPairs[1]=FloatPairs(4.00,50); // dstPairs[0]=FloatPairs(1.00,0.00); // dstPairs[1]=FloatPairs(2.00,0.00); // dstPairs[2]=FloatPairs(3.00,0.00); // dstPairs[3]=FloatPairs(4.00,0.00); // splineGen.performSpline(srcPairs,dstPairs); // ... dstPairs contains interpolation of 25-50 across four points class CatmullRom { public: CatmullRom(void); virtual ~CatmullRom(); BOOL performSpline(GlobalData &sourcePoints,GlobalData &destPoints); private: CatmullRom(const CatmullRom &someCatmullRom); CatmullRom &operator=(const CatmullRom &someCatmullRom); }; #endif