SimpleITK  2.0.0
sitkLabelMapContourOverlayImageFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 *
3 * Copyright NumFOCUS
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18 #ifndef sitkLabelMapContourOverlayImageFilter_h
19 #define sitkLabelMapContourOverlayImageFilter_h
20 
21 /*
22  * WARNING: DO NOT EDIT THIS FILE!
23  * THIS FILE IS AUTOMATICALLY GENERATED BY THE SIMPLEITK BUILD PROCESS.
24  * Please look at sitkDualImageFilterTemplate.h.in to make changes.
25  */
26 
27 #include <memory>
28 
29 #include "sitkImageFilter.h"
31 #include "sitkBasicFilters.h"
32 
33 namespace itk {
34  namespace simple {
35 
56  public:
58 
61 
65 
68 
69 \
70 
74  SITK_RETURN_SELF_TYPE_HEADER SetOpacity ( double Opacity ) { this->m_Opacity = Opacity; return *this; }
75 
79  double GetOpacity() const { return this->m_Opacity; }\
80 
84  SITK_RETURN_SELF_TYPE_HEADER SetDilationRadius ( std::vector<unsigned int> DilationRadius ) { this->m_DilationRadius = std::move(DilationRadius); return *this; }
85 
87  SITK_RETURN_SELF_TYPE_HEADER SetDilationRadius( unsigned int value ) { this->m_DilationRadius = std::vector<unsigned int>(3, value); return *this; }
88 
92  std::vector<unsigned int> GetDilationRadius() const { return this->m_DilationRadius; }\
93 
97  SITK_RETURN_SELF_TYPE_HEADER SetContourThickness ( std::vector<unsigned int> ContourThickness ) { this->m_ContourThickness = std::move(ContourThickness); return *this; }
98 
102  std::vector<unsigned int> GetContourThickness() const { return this->m_ContourThickness; }\
103 
107  SITK_RETURN_SELF_TYPE_HEADER SetSliceDimension ( unsigned int SliceDimension ) { this->m_SliceDimension = SliceDimension; return *this; }
108 
112  unsigned int GetSliceDimension() const { return this->m_SliceDimension; }
113 
114  typedef enum {PLAIN,CONTOUR,SLICE_CONTOUR} ContourTypeType;\
115 
120  SITK_RETURN_SELF_TYPE_HEADER SetContourType ( ContourTypeType ContourType ) { this->m_ContourType = ContourType; return *this; }
121 
126  ContourTypeType GetContourType() const { return this->m_ContourType; }
127 
128  typedef enum {HIGH_LABEL_ON_TOP,LOW_LABEL_ON_TOP} PriorityType;\
129 
133  SITK_RETURN_SELF_TYPE_HEADER SetPriority ( PriorityType Priority ) { this->m_Priority = Priority; return *this; }
134 
138  PriorityType GetPriority() const { return this->m_Priority; }\
139 
142  SITK_RETURN_SELF_TYPE_HEADER SetColormap ( std::vector<uint8_t> Colormap ) { this->m_Colormap = Colormap; return *this; }
143 
146  std::vector<uint8_t> GetColormap() const { return this->m_Colormap; }
147 
149  std::string GetName() const { return std::string ("LabelMapContourOverlayImageFilter"); }
150 
152  std::string ToString() const;
153 
154 
157  Image Execute ( const Image & labelMapImage, const Image & featureImage );
158 
159 
160  private:
162  using MemberFunctionType = Image (Self::*)( const Image * labelMapImage, const Image * featureImage );
163 
165  template <class TImageType1, class TImageType2> Image DualExecuteInternal ( const Image * labelMapImage, const Image * featureImage );
166 
167 
168  std::unique_ptr<detail::DualMemberFunctionFactory<MemberFunctionType> > m_DualMemberFactory;
169 
170 
171 
172  double m_Opacity{0.5};
173 
174  std::vector<unsigned int> m_DilationRadius{std::vector<unsigned int>(3, 1)};
175 
176  std::vector<unsigned int> m_ContourThickness{std::vector<unsigned int>(3, 1)};
177 
178  unsigned int m_SliceDimension{0u};
179 
181 
183 
184  std::vector<uint8_t> m_Colormap{std::vector<uint8_t>()};
185 
186 
187  };
188 
199  SITKBasicFilters_EXPORT Image LabelMapContourOverlay ( const Image & labelMapImage, const Image & featureImage, double opacity = 0.5, std::vector<unsigned int> dilationRadius = std::vector<unsigned int>(3, 1), std::vector<unsigned int> contourThickness = std::vector<unsigned int>(3, 1), unsigned int sliceDimension = 0u, LabelMapContourOverlayImageFilter::ContourTypeType contourType = itk::simple::LabelMapContourOverlayImageFilter::CONTOUR, LabelMapContourOverlayImageFilter::PriorityType priority = itk::simple::LabelMapContourOverlayImageFilter::HIGH_LABEL_ON_TOP, std::vector<uint8_t> colormap = std::vector<uint8_t>() );
200 
202  }
203 }
204 #endif
itk::simple::Image
The Image class for SimpleITK.
Definition: sitkImage.h:75
itk::simple::LabelMapContourOverlayImageFilter::SetDilationRadius
Self & SetDilationRadius(std::vector< unsigned int > DilationRadius)
Definition: sitkLabelMapContourOverlayImageFilter.h:84
sitkBasicFilters.h
itk::simple::LabelMapContourOverlayImageFilter::GetName
std::string GetName() const
Definition: sitkLabelMapContourOverlayImageFilter.h:149
itk::simple::LabelMapContourOverlayImageFilter::m_DualMemberFactory
std::unique_ptr< detail::DualMemberFunctionFactory< MemberFunctionType > > m_DualMemberFactory
Definition: sitkLabelMapContourOverlayImageFilter.h:168
itk::simple::LabelMapContourOverlayImageFilter::SetSliceDimension
Self & SetSliceDimension(unsigned int SliceDimension)
Definition: sitkLabelMapContourOverlayImageFilter.h:107
itk::simple::LabelMapContourOverlayImageFilter::PriorityType
PriorityType
Definition: sitkLabelMapContourOverlayImageFilter.h:128
itk::simple::LabelMapContourOverlayImageFilter::GetSliceDimension
unsigned int GetSliceDimension() const
Definition: sitkLabelMapContourOverlayImageFilter.h:112
itk::simple::LabelMapContourOverlayImageFilter::SetDilationRadius
Self & SetDilationRadius(unsigned int value)
Definition: sitkLabelMapContourOverlayImageFilter.h:87
itk::simple::LabelMapContourOverlayImageFilter::SetContourType
Self & SetContourType(ContourTypeType ContourType)
Definition: sitkLabelMapContourOverlayImageFilter.h:120
itk::simple::LabelMapContourOverlayImageFilter::ContourTypeType
ContourTypeType
Definition: sitkLabelMapContourOverlayImageFilter.h:114
itk::simple::LabelMapContourOverlayImageFilter::SetContourThickness
Self & SetContourThickness(std::vector< unsigned int > ContourThickness)
Definition: sitkLabelMapContourOverlayImageFilter.h:97
itk::simple::LabelMapContourOverlayImageFilter::GetColormap
std::vector< uint8_t > GetColormap() const
Definition: sitkLabelMapContourOverlayImageFilter.h:146
itk::simple::LabelMapContourOverlayImageFilter::SetOpacity
Self & SetOpacity(double Opacity)
Definition: sitkLabelMapContourOverlayImageFilter.h:74
itk::simple::LabelMapContourOverlayImageFilter::CONTOUR
@ CONTOUR
Definition: sitkLabelMapContourOverlayImageFilter.h:114
itk::simple::LabelMapContourOverlayImageFilter::SetColormap
Self & SetColormap(std::vector< uint8_t > Colormap)
Definition: sitkLabelMapContourOverlayImageFilter.h:142
itk::simple::LabelMapContourOverlayImageFilter::GetContourThickness
std::vector< unsigned int > GetContourThickness() const
Definition: sitkLabelMapContourOverlayImageFilter.h:102
sitkImageFilter.h
itk::simple::LabelMapContourOverlayImageFilter::GetOpacity
double GetOpacity() const
Definition: sitkLabelMapContourOverlayImageFilter.h:79
itk::simple::LabelMapContourOverlay
Image LabelMapContourOverlay(const Image &labelMapImage, const Image &featureImage, double opacity=0.5, std::vector< unsigned int > dilationRadius=std::vector< unsigned int >(3, 1), std::vector< unsigned int > contourThickness=std::vector< unsigned int >(3, 1), unsigned int sliceDimension=0u, LabelMapContourOverlayImageFilter::ContourTypeType contourType=itk::simple::LabelMapContourOverlayImageFilter::CONTOUR, LabelMapContourOverlayImageFilter::PriorityType priority=itk::simple::LabelMapContourOverlayImageFilter::HIGH_LABEL_ON_TOP, std::vector< uint8_t > colormap=std::vector< uint8_t >())
Apply a colormap to the contours (outlines) of each object in a label map and superimpose it on top o...
itk::simple::LabelMapContourOverlayImageFilter::GetContourType
ContourTypeType GetContourType() const
Definition: sitkLabelMapContourOverlayImageFilter.h:126
itk::simple::LabelMapContourOverlayImageFilter::GetPriority
PriorityType GetPriority() const
Definition: sitkLabelMapContourOverlayImageFilter.h:138
sitkDualMemberFunctionFactory.h
SITKBasicFilters_EXPORT
#define SITKBasicFilters_EXPORT
Definition: sitkBasicFilters.h:52
itk::simple::LabelMapContourOverlayImageFilter::PixelIDTypeList
LabelPixelIDTypeList PixelIDTypeList
Definition: sitkLabelMapContourOverlayImageFilter.h:67
itk::simple::LabelMapContourOverlayImageFilter
Apply a colormap to the contours (outlines) of each object in a label map and superimpose it on top o...
Definition: sitkLabelMapContourOverlayImageFilter.h:55
itk::simple::LabelMapContourOverlayImageFilter::HIGH_LABEL_ON_TOP
@ HIGH_LABEL_ON_TOP
Definition: sitkLabelMapContourOverlayImageFilter.h:128
itk::simple::detail::DualExecuteInternalAddressor
Definition: sitkDetail.h:44
itk
itk::simple::LabelMapContourOverlayImageFilter::MemberFunctionType
Image(Self::*)(const Image *labelMapImage, const Image *featureImage) MemberFunctionType
Definition: sitkLabelMapContourOverlayImageFilter.h:162
itk::simple::ImageFilter
The base interface for SimpleITK filters that take one input image.
Definition: sitkImageFilter.h:36
itk::Image
Definition: sitkPixelIDTypes.h:26
itk::simple::LabelMapContourOverlayImageFilter::GetDilationRadius
std::vector< unsigned int > GetDilationRadius() const
Definition: sitkLabelMapContourOverlayImageFilter.h:92
itk::simple::LabelMapContourOverlayImageFilter::SetPriority
Self & SetPriority(PriorityType Priority)
Definition: sitkLabelMapContourOverlayImageFilter.h:133
itk::simple::LabelPixelIDTypeList
typelist::MakeTypeList< LabelPixelID< uint8_t >, LabelPixelID< uint16_t >, LabelPixelID< uint32_t > >::Type LabelPixelIDTypeList
Definition: sitkPixelIDTypeLists.h:165