Medical Imaging Interaction Toolkit  2026.06.00
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 {
47  {
48  public:
50  itkNewMacro(Self);
51 
52  itkSetMacro(MakeOutputBinary, bool);
53  itkGetMacro(MakeOutputBinary, bool);
54  itkBooleanMacro(MakeOutputBinary);
55 
56  itkSetMacro(OverwriteBackground, bool);
57  itkGetMacro(OverwriteBackground, bool);
58  itkBooleanMacro(OverwriteBackground);
59 
60  itkGetConstMacro(BackgroundValue, float);
61  itkSetMacro(BackgroundValue, float);
62 
63  itkGetConstMacro(ForegroundValue, float);
64  itkSetMacro(ForegroundValue, float);
65 
68 
70  void GenerateOutputInformation() override;
71 
73  void GenerateData() override;
74 
79  void SetSurface(mitk::Surface *surface);
80 
82  typedef itk::QuadEdgeMesh<double, 3> MeshType;
83 
84  protected:
86 
88 
89  void SurfaceStamp(int time = 0);
90 
91  template <typename TPixel>
92  void SurfaceStampProcessing(itk::Image<TPixel, 3> *input, MeshType *mesh);
93 
95 
100 
101  mitk::Surface::Pointer m_Surface;
102  };
103 } // namespace mitk
104 
105 #endif
#define MITKSEGMENTATION_EXPORT
Superclass of all classes having one or more Images as input and generating Images as output.
Converts surface data to pixel data by stamping a surface into a volume image.
void SurfaceStamp(int time=0)
itk::QuadEdgeMesh< double, 3 > MeshType
Mesh type used internally for surface processing.
void SurfaceStampBinaryOutputProcessing(MeshType *mesh)
void GenerateData() override
Executes the surface stamping filter.
void GenerateOutputInformation() override
Generates the output information (image properties).
void SurfaceStampProcessing(itk::Image< TPixel, 3 > *input, MeshType *mesh)
void GenerateInputRequestedRegion() override
Generates the input requested region for the filter pipeline.
void SetSurface(mitk::Surface *surface)
Sets the surface to be stamped onto the image.
mitkClassMacro(SurfaceStampImageFilter, ImageToImageFilter)
Data class for storing polygonal surfaces (vtkPolyData).
Definition: mitkSurface.h:37
Find image slices visible on a given plane.