SimpleITK  
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
33namespace itk::simple {
34
55 public:
57
60
64
67
68\
69
73 SITK_RETURN_SELF_TYPE_HEADER SetOpacity ( double Opacity ) { this->m_Opacity = Opacity; return *this; }
74
78 double GetOpacity() const { return this->m_Opacity; }\
79
83 SITK_RETURN_SELF_TYPE_HEADER SetDilationRadius ( std::vector<unsigned int> DilationRadius ) { this->m_DilationRadius = std::move(DilationRadius); return *this; }
84
86 SITK_RETURN_SELF_TYPE_HEADER SetDilationRadius( unsigned int value ) { this->m_DilationRadius = std::vector<unsigned int>(3, value); return *this; }
87
91 std::vector<unsigned int> GetDilationRadius() const { return this->m_DilationRadius; }\
92
96 SITK_RETURN_SELF_TYPE_HEADER SetContourThickness ( std::vector<unsigned int> ContourThickness ) { this->m_ContourThickness = std::move(ContourThickness); return *this; }
97
101 std::vector<unsigned int> GetContourThickness() const { return this->m_ContourThickness; }\
102
106 SITK_RETURN_SELF_TYPE_HEADER SetSliceDimension ( unsigned int SliceDimension ) { this->m_SliceDimension = SliceDimension; return *this; }
107
111 unsigned int GetSliceDimension() const { return this->m_SliceDimension; }
112
113 typedef enum {PLAIN,CONTOUR,SLICE_CONTOUR} ContourTypeType;\
114
119 SITK_RETURN_SELF_TYPE_HEADER SetContourType ( ContourTypeType ContourType ) { this->m_ContourType = ContourType; return *this; }
120
126
127 typedef enum {HIGH_LABEL_ON_TOP,LOW_LABEL_ON_TOP} PriorityType;\
128
132 SITK_RETURN_SELF_TYPE_HEADER SetPriority ( PriorityType Priority ) { this->m_Priority = Priority; return *this; }
133
137 PriorityType GetPriority() const { return this->m_Priority; }\
138
141 SITK_RETURN_SELF_TYPE_HEADER SetColormap ( std::vector<uint8_t> Colormap ) { this->m_Colormap = Colormap; return *this; }
142
145 std::vector<uint8_t> GetColormap() const { return this->m_Colormap; }
146
148 std::string GetName() const { return std::string ("LabelMapContourOverlayImageFilter"); }
149
151 std::string ToString() const;
152
153
155
156 Image Execute ( const Image & labelMapImage, const Image & featureImage );
157
158
159 private:
161 using MemberFunctionType = Image (Self::*)( const Image * labelMapImage, const Image * featureImage );
162
164 template <class TImageType1, class TImageType2> Image DualExecuteInternal ( const Image * labelMapImage, const Image * featureImage );
165
166
167 std::unique_ptr<detail::DualMemberFunctionFactory<MemberFunctionType> > m_DualMemberFactory;
168
169
170
171 double m_Opacity{0.5};
172
173 std::vector<unsigned int> m_DilationRadius{std::vector<unsigned int>(3, 1)};
174
175 std::vector<unsigned int> m_ContourThickness{std::vector<unsigned int>(3, 1)};
176
177 unsigned int m_SliceDimension{0u};
178
180
182
183 std::vector<uint8_t> m_Colormap{std::vector<uint8_t>()};
184
185
186 };
187
197
198 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>() );
199
201}
202#endif
The Image class for SimpleITK.
Definition sitkImage.h:77
std::unique_ptr< detail::DualMemberFunctionFactory< MemberFunctionType > > m_DualMemberFactory
Self & SetDilationRadius(std::vector< unsigned int > DilationRadius)
Image(Self::*)(const Image *labelMapImage, const Image *featureImage) MemberFunctionType
Self & SetContourThickness(std::vector< unsigned int > ContourThickness)
Image Execute(const Image &labelMapImage, const Image &featureImage)
Image DualExecuteInternal(const Image *labelMapImage, const Image *featureImage)
typelist2::typelist< LabelPixelID< uint8_t >, LabelPixelID< uint16_t >, LabelPixelID< uint32_t > > LabelPixelIDTypeList
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...
#define SITKBasicFilters_EXPORT