51 #ifndef __vtkQuaternionInterpolator_h
52 #define __vtkQuaternionInterpolator_h
57 class vtkQuaternionList;
71 int GetNumberOfQuaternions();
90 void AddQuaternion(
double t,
double q[4]);
94 void RemoveQuaternion(
double t);
99 void InterpolateQuaternion(
double t,
double q[4]);
104 enum {INTERPOLATION_TYPE_LINEAR=0,
105 INTERPOLATION_TYPE_SPLINE
116 vtkSetClampMacro(InterpolationType,
int,INTERPOLATION_TYPE_LINEAR,
117 INTERPOLATION_TYPE_SPLINE);
118 vtkGetMacro(InterpolationType,
int);
120 {this->SetInterpolationType(INTERPOLATION_TYPE_LINEAR);}
122 {this->SetInterpolationType(INTERPOLATION_TYPE_SPLINE);}
136 void Slerp(
double t,
double q0[4],
double q1[4],
double q[4]);
139 static void InnerPoint(
double q0[4],
double q1[4],
double q2[4],
double q[4]);
abstract base class for most VTK objects
void SetInterpolationTypeToSpline()
virtual void PrintSelf(ostream &os, vtkIndent indent)
a simple class to control print indentation
void SetInterpolationTypeToLinear()
vtkQuaternionList * QuaternionList