Medical Imaging Interaction Toolkit  2021.10.00
Medical Imaging Interaction Toolkit
mitkContourModelSubDivisionFilter.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef _mitkContourModelSubDivisionFilter_h__
14 #define _mitkContourModelSubDivisionFilter_h__
15 
16 #include "mitkCommon.h"
17 #include "mitkContourModel.h"
18 #include "mitkContourModelSource.h"
20 
21 namespace mitk
22 {
36  {
37  public:
39  itkFactorylessNewMacro(Self);
40  itkCloneMacro(Self);
41 
42  typedef ContourModel OutputType;
45 
50  void SetNumberOfIterations(int iterations) { this->m_InterpolationIterations = iterations; }
51  using Superclass::SetInput;
52 
53  virtual void SetInput(const InputType *input);
54 
55  virtual void SetInput(unsigned int idx, const InputType *input);
56 
57  const InputType *GetInput(void);
58 
59  const InputType *GetInput(unsigned int idx);
60 
61  protected:
63 
65 
66  void GenerateOutputInformation() override{};
67 
68  void GenerateData() override;
69 
71  };
72 }
73 
74 #endif
ContourModel is a structure of linked vertices defining a contour in 3D space. The vertices are store...
#define MITKCONTOURMODEL_EXPORT
Superclass of all classes generating some kind of mitk::BaseData.
DataCollection - Class to facilitate loading/accessing structured data.
Superclass of all classes generating ContourModels.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:36
void SetNumberOfIterations(int iterations)
Set the number of iterations for inserting new interpolated control points.
This filter interpolates a subdivision curve between control points of the contour. For inserting subpoints Dyn-Levin-Gregory (DLG) interpolation scheme is used. Interpolating a cruve subdivision is done by: F2i = Ci F2i+1 = -1/16Ci-1 + 9/16Ci + 9/16Ci+1 - 1/16Ci+2.