35 #ifndef IE_CORE_OBJECTINTERPOLATOR_H
36 #define IE_CORE_OBJECTINTERPOLATOR_H
38 #include "IECore/Export.h"
39 #include "IECore/Interpolator.h"
44 IE_CORE_FORWARDDECLARE( Object );
47 struct LinearInterpolator< Object >
49 void operator()(
const Object *y0,
const Object *y1,
double x, ObjectPtr &result )
const;
57 struct CubicInterpolator< Object >
59 void operator()(
const Object *y0,
const Object *y1,
const Object *y2,
const Object *y3,
double x, ObjectPtr &result )
const;
70 IECORE_API ObjectPtr
cubicObjectInterpolation(
const Object *y0,
const Object *y1,
const Object *y2,
const Object *y3,
double x );
74 #endif // IE_CORE_OBJECTINTERPOLATOR_H
void operator()(const T &y0, const T &y1, const T &y2, T const &y3, double x, T &result) const
Interpolate between y1 and y2. Requires additional data points on either side.
IECORE_API ObjectPtr linearObjectInterpolation(const Object *y0, const Object *y1, double x)
Utility function that applies linear interpolation on objects. Returns a "null" pointer if the Object...
IECORE_API ObjectPtr cubicObjectInterpolation(const Object *y0, const Object *y1, const Object *y2, const Object *y3, double x)
Utility function that applies cubic interpolation on objects. Returns a "null" pointer if the Object ...
void operator()(const T &y0, const T &y1, double x, T &result) const
Interpolate between y0 and y1.
This namespace contains all components of the core library.
Definition: AddSmoothSkinningInfluencesOp.h:43