18 template <
typename Real>
30 inline Real
const*
GetF()
const;
31 virtual Real
GetXMin()
const = 0;
32 virtual Real
GetXMax()
const = 0;
56 virtual void Lookup(Real x,
int&
index, Real& dx)
const = 0;
64 template <
typename Real>
77 template <
typename Real>
82 template <
typename Real>
inline 88 template <
typename Real>
inline 94 template <
typename Real>
104 template <
typename Real>
114 template <
typename Real>
117 if (slope[1] != slope[2])
119 if (slope[0] != slope[1])
121 if (slope[2] != slope[3])
123 Real ad0 =
std::abs(slope[3] - slope[2]);
124 Real ad1 =
std::abs(slope[0] - slope[1]);
125 return (ad0 * slope[1] + ad1 * slope[2]) / (ad0 + ad1);
134 if (slope[2] != slope[3])
140 return ((Real)0.5) * (slope[1] + slope[2]);
150 template <
typename Real>
inline 156 template <
typename Real>
159 return mCoeff[0] + x * (mCoeff[1] + x * (mCoeff[2] + x * mCoeff[3]));
162 template <
typename Real>
168 return mCoeff[0] + x * (mCoeff[1] + x * (mCoeff[2] + x * mCoeff[3]));
170 return mCoeff[1] + x * (((Real)2)*mCoeff[2] + x * ((Real)3) * mCoeff[3]);
172 return ((Real)2) * mCoeff[2] + x * ((Real)6) * mCoeff[3];
174 return ((Real)6) * mCoeff[3];
GLfixed GLfixed GLint GLint order
std::vector< Polynomial > mPoly
gte::BSNumber< UIntegerType > abs(gte::BSNumber< UIntegerType > const &number)
#define LogAssert(condition, message)
Real operator()(Real x) const
Real ComputeDerivative(Real *slope) const
virtual Real GetXMax() const =0
virtual Real GetXMin() const =0
Real operator()(Real x) const
IntpAkima1(int quantity, Real const *F)
Real const * GetF() const
virtual void Lookup(Real x, int &index, Real &dx) const =0