Slicer  5.1
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
vtkLinearSpline.h
Go to the documentation of this file.
1 /*==============================================================================
2 
3  Program: 3D Slicer
4 
5  Copyright (c) Kitware Inc.
6 
7  See COPYRIGHT.txt
8  or http://www.slicer.org/copyright/copyright.txt for details.
9 
10  Unless required by applicable law or agreed to in writing, software
11  distributed under the License is distributed on an "AS IS" BASIS,
12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  See the License for the specific language governing permissions and
14  limitations under the License.
15 
16  This file was originally developed by Thomas Vaughan, PerkLab, Queen's University.
17 
18 ==============================================================================*/
19 
32 #ifndef vtkLinearSpline_h
33 #define vtkLinearSpline_h
34 
35 #include "vtkSlicerMarkupsModuleMRMLExport.h" // For export macro
36 
37 #include <vtkSpline.h>
38 
39 class VTK_SLICER_MARKUPS_MODULE_MRML_EXPORT vtkLinearSpline : public vtkSpline
40 {
41 public:
42  static vtkLinearSpline *New();
43 
44  vtkTypeMacro(vtkLinearSpline,vtkSpline);
45  void PrintSelf(ostream& os, vtkIndent indent) override;
46 
50  void Compute () override;
51 
55  double Evaluate (double t) override;
56 
60  void DeepCopy(vtkSpline *s) override;
61 
62 protected:
64  ~vtkLinearSpline() override = default;
65 
66 private:
67  vtkLinearSpline(const vtkLinearSpline&) = delete;
68  void operator=(const vtkLinearSpline&) = delete;
69 };
70 
71 #endif
computes an interpolating spline with piecewise linear segments