ITK
5.2.0
Insight Toolkit
ITK
Modules
Filtering
Path
include
itkParametricPath.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 itkParametricPath_h
19
#define itkParametricPath_h
20
21
#include "
itkImageBase.h
"
22
#include "
itkPath.h
"
23
#include "
itkContinuousIndex.h
"
24
#include "
itkOffset.h
"
25
#include "
itkVector.h
"
26
27
namespace
itk
28
{
61
template
<
unsigned
int
VDimension>
62
class
ITK_TEMPLATE_EXPORT
ParametricPath
63
:
public
Path
<double, ContinuousIndex<SpacePrecisionType, VDimension>, VDimension>
64
{
65
public
:
66
ITK_DISALLOW_COPY_AND_MOVE(
ParametricPath
);
67
69
using
Self
=
ParametricPath
;
70
72
using
ContinuousIndexType
=
ContinuousIndex<SpacePrecisionType, VDimension>
;
73
using
Superclass
=
Path<double, ContinuousIndexType, VDimension>
;
74
75
using
Pointer
=
SmartPointer<Self>
;
76
using
ConstPointer
=
SmartPointer<const Self>
;
77
79
itkTypeMacro(
ParametricPath
,
Path
);
80
82
using
InputType
=
typename
Superclass::InputType;
83
85
using
OutputType
=
typename
Superclass::OutputType;
86
87
using
IndexType
=
Index<VDimension>
;
88
using
OffsetType
=
Offset<VDimension>
;
89
using
VectorType
=
Vector<double, VDimension>
;
90
93
IndexType
94
EvaluateToIndex(
const
InputType
& input)
const override
;
95
111
OffsetType
112
IncrementInput(
InputType
& input)
const override
;
113
120
virtual
VectorType
121
EvaluateDerivative(
const
InputType
& input)
const
;
122
123
itkSetMacro(DefaultInputStepSize,
InputType
);
124
itkGetConstReferenceMacro(DefaultInputStepSize,
InputType
);
125
126
protected
:
127
ParametricPath
();
128
~
ParametricPath
()
override
=
default
;
129
void
130
PrintSelf(std::ostream & os,
Indent
indent)
const override
;
131
142
InputType
m_DefaultInputStepSize
;
143
};
145
146
}
// namespace itk
147
148
#ifndef ITK_MANUAL_INSTANTIATION
149
# include "itkParametricPath.hxx"
150
#endif
151
152
#endif // itkParametricPath.h
itk::Index
Represent a n-dimensional index in a n-dimensional image.
Definition:
itkIndex.h:66
itk::Path
Represent a path through ND Space.
Definition:
itkPath.h:54
itkContinuousIndex.h
itk::ParametricPath< 2 >::OutputType
typename Superclass::OutputType OutputType
Definition:
itkParametricPath.h:85
itk::ParametricPath
Represent a parametric path through ND Space.
Definition:
itkParametricPath.h:62
itkOffset.h
itk::Vector< double, VDimension >
itk::SmartPointer< Self >
itk::Indent
Control indentation during Print() invocation.
Definition:
itkIndent.h:49
itkPath.h
itk::Offset
Represent a n-dimensional offset between two n-dimensional indexes of n-dimensional image.
Definition:
itkOffset.h:67
itk
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
Definition:
itkAnnulusOperator.h:24
itk::ContinuousIndex
A templated class holding a point in n-Dimensional image space.
Definition:
itkContinuousIndex.h:46
itkVector.h
itk::Object
Base class for most ITK classes.
Definition:
itkObject.h:62
itk::ParametricPath< 2 >::InputType
typename Superclass::InputType InputType
Definition:
itkParametricPath.h:82
itk::ParametricPath::m_DefaultInputStepSize
InputType m_DefaultInputStepSize
Definition:
itkParametricPath.h:142
itk::DataObject
Base class for all data objects in ITK.
Definition:
itkDataObject.h:293
itkImageBase.h
Generated on Thu Apr 1 2021 01:58:47 for ITK by
1.8.16