Public Member Functions |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | Compute () |
double | Evaluate (double t) |
virtual void | DeepCopy (vtkSpline *s) |
|
virtual void | SetDefaultBias (double) |
virtual double | GetDefaultBias () |
|
virtual void | SetDefaultTension (double) |
virtual double | GetDefaultTension () |
|
virtual void | SetDefaultContinuity (double) |
virtual double | GetDefaultContinuity () |
int | GetNumberOfPoints () |
void | AddPoint (double t, double x) |
void | RemovePoint (double t) |
void | RemoveAllPoints () |
unsigned long | GetMTime () |
void | SetParametricRange (double tMin, double tMax) |
void | SetParametricRange (double tRange[2]) |
void | GetParametricRange (double tRange[2]) const |
virtual void | SetClampValue (int) |
virtual int | GetClampValue () |
virtual void | ClampValueOn () |
virtual void | ClampValueOff () |
virtual void | SetClosed (int) |
virtual int | GetClosed () |
virtual void | ClosedOn () |
virtual void | ClosedOff () |
virtual void | SetLeftConstraint (int) |
virtual int | GetLeftConstraint () |
virtual void | SetRightConstraint (int) |
virtual int | GetRightConstraint () |
virtual void | SetLeftValue (double) |
virtual double | GetLeftValue () |
virtual void | SetRightValue (double) |
virtual double | GetRightValue () |
virtual void | DebugOn () |
virtual void | DebugOff () |
unsigned char | GetDebug () |
void | SetDebug (unsigned char debugFlag) |
virtual void | Modified () |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
vtkCommand * | GetCommand (unsigned long tag) |
void | RemoveObserver (vtkCommand *) |
void | RemoveObservers (unsigned long event, vtkCommand *) |
void | RemoveObservers (const char *event, vtkCommand *) |
int | HasObserver (unsigned long event, vtkCommand *) |
int | HasObserver (const char *event, vtkCommand *) |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
int | HasObserver (unsigned long event) |
int | HasObserver (const char *event) |
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
int | InvokeEvent (unsigned long event, void *callData) |
int | InvokeEvent (const char *event, void *callData) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
const char * | GetClassName () const |
virtual void | Delete () |
virtual void | FastDelete () |
void | Print (ostream &os) |
virtual void | Register (vtkObjectBase *o) |
virtual void | UnRegister (vtkObjectBase *o) |
void | SetReferenceCount (int) |
void | PrintRevisions (ostream &os) |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
int | GetReferenceCount () |
Protected Member Functions |
| vtkKochanekSpline () |
| ~vtkKochanekSpline () |
void | Fit1D (int n, double *x, double *y, double tension, double bias, double continuity, double coefficients[][4], int leftConstraint, double leftValue, int rightConstraint, double rightValue) |
| vtkSpline () |
| ~vtkSpline () |
double | ComputeLeftDerivative () |
double | ComputeRightDerivative () |
int | FindIndex (int size, double t) |
| vtkObject () |
virtual | ~vtkObject () |
virtual void | RegisterInternal (vtkObjectBase *, int check) |
virtual void | UnRegisterInternal (vtkObjectBase *, int check) |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
void | InternalReleaseFocus () |
| vtkObjectBase () |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &os) |
virtual void | ReportReferences (vtkGarbageCollector *) |
| vtkObjectBase (const vtkObjectBase &) |
void | operator= (const vtkObjectBase &) |
computes an interpolating spline using a Kochanek basis.
Implements the Kochenek interpolating spline described in: Kochanek, D., Bartels, R., "Interpolating Splines with Local Tension, Continuity, and
Bias Control," Computer Graphics, vol. 18, no. 3, pp. 33-41, July 1984. These splines give the user more control over the shape of the curve than the cardinal splines implemented in vtkCardinalSpline. Three parameters can be specified. All have a range from -1 to 1.
Tension controls how sharply the curve bends at an input point. A value of -1 produces more slack in the curve. A value of 1 tightens the curve.
Continuity controls the continuity of the first derivative at input points.
Bias controls the direction of the curve at it passes through an input point. A value of -1 undershoots the point while a value of 1 overshoots the point.
These three parameters give the user broad control over the shape of the interpolating spline. The original Kochanek paper describes the effects nicely and is recommended reading.
- See Also
- vtkSpline vtkCardinalSpline
- Examples:
- vtkKochanekSpline (Examples)
- Tests:
- vtkKochanekSpline (Tests)
Definition at line 55 of file vtkKochanekSpline.h.