VTK
vtkCardinalSpline.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkCardinalSpline.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
33 #ifndef __vtkCardinalSpline_h
34 #define __vtkCardinalSpline_h
35 
36 #include "vtkSpline.h"
37 
39 {
40 public:
41  static vtkCardinalSpline *New();
42 
44  void PrintSelf(ostream& os, vtkIndent indent);
45 
47  void Compute ();
48 
50  virtual double Evaluate (double t);
51 
53  virtual void DeepCopy(vtkSpline *s);
54 
55 protected:
58 
59  void Fit1D (int n, double *x, double *y, double *w, double coefficients[][4],
60  int leftConstraint, double leftValue, int rightConstraint,
61  double rightValue);
62 
63  void FitClosed1D (int n, double *x, double *y, double *w,
64  double coefficients[][4]);
65 
66 private:
67  vtkCardinalSpline(const vtkCardinalSpline&); // Not implemented.
68  void operator=(const vtkCardinalSpline&); // Not implemented.
69 };
70 
71 #endif
72