Medical Imaging Interaction Toolkit  2022.04.99-194dd5d8
Medical Imaging Interaction Toolkit
mitkSurfaceStampImageFilter.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 _mitkSurfaceStampImageFilter_h__
14 #define _mitkSurfaceStampImageFilter_h__
15 
17 #include "mitkCommon.h"
18 #include "mitkImageToImageFilter.h"
19 #include "mitkSurface.h"
20 
21 #include <itkQuadEdgeMesh.h>
22 
23 class vtkPolyData;
24 
25 namespace mitk
26 {
49  {
50  public:
52  itkNewMacro(Self);
53 
54  itkSetMacro(MakeOutputBinary, bool);
55  itkGetMacro(MakeOutputBinary, bool);
56  itkBooleanMacro(MakeOutputBinary);
57 
58  itkSetMacro(OverwriteBackground, bool);
59  itkGetMacro(OverwriteBackground, bool);
60  itkBooleanMacro(OverwriteBackground);
61 
62  itkGetConstMacro(BackgroundValue, float);
63  itkSetMacro(BackgroundValue, float);
64 
65  itkGetConstMacro(ForegroundValue, float);
66  itkSetMacro(ForegroundValue, float);
67 
68  void GenerateInputRequestedRegion() override;
69 
70  void GenerateOutputInformation() override;
71 
72  void GenerateData() override;
73 
74  void SetSurface(mitk::Surface *surface);
75 
76  typedef itk::QuadEdgeMesh<double, 3> MeshType;
77 
78  protected:
80 
81  ~SurfaceStampImageFilter() override;
82 
83  void SurfaceStamp(int time = 0);
84 
85  template <typename TPixel>
86  void SurfaceStampProcessing(itk::Image<TPixel, 3> *input, MeshType *mesh);
87 
88  void SurfaceStampBinaryOutputProcessing(MeshType *mesh);
89 
94 
96  };
97 } // namespace mitk
98 
99 #endif /* MITKCOONSPATCHFILTER_H_HEADER_INCLUDED_C10B22CD */
Class for storing surfaces (vtkPolyData).
Definition: mitkSurface.h:28
Converts surface data to pixel data. Requires a surface and an image, which header information define...
Superclass of all classes generating some kind of mitk::BaseData.
#define MITKSEGMENTATION_EXPORT
DataCollection - Class to facilitate loading/accessing structured data.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:36
Superclass of all classes having one or more Images as input and generating Images as output...
itk::QuadEdgeMesh< double, 3 > MeshType