ITK 6.0.0
Insight Toolkit
 
Loading...
Searching...
No Matches
itkExtractOrthogonalSwath2DImageFilter.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 * https://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 itkExtractOrthogonalSwath2DImageFilter_h
19#define itkExtractOrthogonalSwath2DImageFilter_h
20
22#include "itkParametricPath.h"
23
24namespace itk
25{
42template <typename TImage>
43class ITK_TEMPLATE_EXPORT ExtractOrthogonalSwath2DImageFilter
44 : public ImageAndPathToImageFilter<TImage, ParametricPath<2>, TImage>
45{
46public:
47 ITK_DISALLOW_COPY_AND_MOVE(ExtractOrthogonalSwath2DImageFilter);
48
54
56 itkNewMacro(Self);
57
59 itkOverrideGetNameOfClassMacro(ExtractOrthogonalSwath2DImageFilter);
60
62 using ImageType = TImage;
63 using ImagePointer = typename ImageType::Pointer;
64 using ImageConstPointer = typename ImageType::ConstPointer;
65 using ImageRegionType = typename ImageType::RegionType;
66 using ImageIndexType = typename ImageType::IndexType;
67 using ImagePixelType = typename ImageType::PixelType;
76 using SizeType = typename ImageType::SizeType;
77
79 static constexpr unsigned int PathDimension = 2;
80 static constexpr unsigned int ImageDimension = TImage::ImageDimension;
81
88 virtual void
89 SetSpacing(const double * spacing);
90
91 virtual void
92 SetSpacing(const float * spacing);
93
94 virtual const double *
95 GetSpacing() const;
96
101 virtual void
102 SetOrigin(const double * origin);
103
104 virtual void
105 SetOrigin(const float * origin);
106
107 virtual const double *
108 GetOrigin() const;
109
112 itkSetMacro(Size, SizeType);
113
116 itkSetMacro(DefaultPixelValue, ImagePixelType);
117
118 //--------------------------------------------------------------------------
119 //
120
122 void
127
128 //
129 //--------------------------------------------------------------------------
130
131protected:
133 {
135 m_Size[0] = 512;
136 m_Size[1] = 16 * 2 + 1; // must be odd
137 m_Origin[0] = m_Origin[1] = 0.0;
138 m_Spacing[0] = m_Spacing[1] = 1.0;
139 }
140
142 void
143 PrintSelf(std::ostream & os, Indent indent) const override;
144
145 //--------------------------------------------------------------------------
146 //
147
149 void
151
153 void
155 {
157 this->GetNonConstImageInput()->SetRequestedRegionToLargestPossibleRegion();
158 this->GetNonConstPathInput()->SetRequestedRegionToLargestPossibleRegion();
159 }
160
161
162 void
163 GenerateData() override;
164
165 //
166 //--------------------------------------------------------------------------
167
168private:
173};
174} // end namespace itk
175
176#ifndef ITK_MANUAL_INSTANTIATION
177# include "itkExtractOrthogonalSwath2DImageFilter.hxx"
178#endif
179
180#endif
Base class for all data objects in ITK.
virtual void SetRequestedRegionToLargestPossibleRegion()
typename PathType::ContinuousIndexType PathContinuousIndexType
virtual const double * GetSpacing() const
virtual const double * GetOrigin() const
virtual void SetSpacing(const double *spacing)
virtual void SetOrigin(const double *origin)
~ExtractOrthogonalSwath2DImageFilter() override=default
ImageAndPathToImageFilter< TImage, ParametricPath< 2 >, TImage > Superclass
virtual void SetOrigin(const float *origin)
virtual void SetSpacing(const float *spacing)
void PrintSelf(std::ostream &os, Indent indent) const override
Control indentation during Print() invocation.
Definition itkIndent.h:50
Represent a parametric path through ND Space.
Vector< double, VDimension > VectorType
Index< VDimension > IndexType
ContinuousIndexType OutputType
Offset< VDimension > OffsetType
SmartPointer< const Self > ConstPointer
ContinuousIndex< SpacePrecisionType, VDimension > ContinuousIndexType
Implements transparent reference counting.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
Represent a n-dimensional size (bounds) of a n-dimensional image.
Definition itkSize.h:70