go home Home | Main Page | Topics | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Loading...
Searching...
No Matches
itkCorrespondingPointsEuclideanDistancePointMetric.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright UMC Utrecht and contributors
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 itkCorrespondingPointsEuclideanDistancePointMetric_h
19#define itkCorrespondingPointsEuclideanDistancePointMetric_h
20
22#include "itkPoint.h"
23#include "itkPointSet.h"
24#include "itkImage.h"
25
26namespace itk
27{
28
37
38template <typename TFixedPointSet, typename TMovingPointSet>
40 : public SingleValuedPointSetToPointSetMetric<TFixedPointSet, TMovingPointSet>
41{
42public:
44
48 using Pointer = SmartPointer<Self>;
49 using ConstPointer = SmartPointer<const Self>;
50
52 itkNewMacro(Self);
53
56
58 using typename Superclass::ParametersType;
60 using typename Superclass::MeasureType;
61 using typename Superclass::DerivativeType;
62 using typename Superclass::FixedPointSetType;
63 using typename Superclass::MovingPointSetType;
64 using typename Superclass::InputPointType;
65 using typename Superclass::OutputPointType;
67
69 MeasureType
70 GetValue(const ParametersType & parameters) const override;
71
73 void
74 GetDerivative(const ParametersType & parameters, DerivativeType & Derivative) const override;
75
77 void
78 GetValueAndDerivative(const ParametersType & parameters,
79 MeasureType & Value,
80 DerivativeType & Derivative) const override;
81
82protected:
85};
86
87} // end namespace itk
88
89#ifndef ITK_MANUAL_INSTANTIATION
90# include "itkCorrespondingPointsEuclideanDistancePointMetric.hxx"
91#endif
92
93#endif
ITK_DISALLOW_COPY_AND_MOVE(CorrespondingPointsEuclideanDistancePointMetric)
SingleValuedPointSetToPointSetMetric< typename MetricBase< TElastix >::FixedPointSetType, typename MetricBase< TElastix >::MovingPointSetType > Superclass
MeasureType GetValue(const ParametersType &parameters) const override
void GetDerivative(const ParametersType &parameters, DerivativeType &Derivative) const override
itkOverrideGetNameOfClassMacro(CorrespondingPointsEuclideanDistancePointMetric)
void GetValueAndDerivative(const ParametersType &parameters, MeasureType &Value, DerivativeType &Derivative) const override
typename TransformType::NonZeroJacobianIndicesType NonZeroJacobianIndicesType


Generated on 1774142652 for elastix by doxygen 1.15.0 elastix logo