20 #ifndef MIRTK_CurrentsDistance_H 21 #define MIRTK_CurrentsDistance_H 23 #include "mirtk/PointSetDistance.h" 25 #include "vtkSmartPointer.h" 26 #include "vtkPointSet.h" 27 #include "vtkPolyData.h" 50 mirtkAttributeMacro(vtkSmartPointer<vtkPolyData>, TargetCurrent);
53 mirtkAttributeMacro(vtkSmartPointer<vtkPolyData>, SourceCurrent);
56 mirtkPublicAttributeMacro(
double, Sigma);
59 mirtkPublicAttributeMacro(
bool, Symmetric);
62 mirtkAttributeMacro(
double, TargetNormSquared);
69 static vtkSmartPointer<vtkPolyData>
ToCurrent(vtkPointSet *);
129 virtual void Update(
bool);
148 virtual void WriteDataSets(
const char *,
const char *,
bool =
true)
const;
155 #endif // MIRTK_CurrentsDistance_H static vtkSmartPointer< vtkPolyData > ToCurrent(vtkPointSet *)
Convert data set to current.
virtual void Reinitialize()
Reinitialize distance measure after input topology changed.
CurrentsDistance & operator=(const CurrentsDistance &)
Assignment operator.
virtual bool SetWithPrefix(const char *, const char *)
Set parameter value from string.
Distance measure based on currents representation.
Array< Pair< string, string > > ParameterList
Ordered list of parameter name/value pairs.
virtual void Update(bool)
Update moving input points and internal state of distance measure.
CurrentsDistance(const char *="", double=1.0)
Constructor.
virtual ParameterList Parameter() const
Get parameter key/value as string map.
static vtkSmartPointer< vtkPolyData > SurfaceToCurrent(vtkPolyData *)
Convert surface mesh to current.
virtual void WriteDataSets(const char *, const char *, bool=true) const
Write input of data fidelity term.
virtual ~CurrentsDistance()
Destructor.
virtual void NonParametricGradient(const RegisteredPointSet *target, GradientType *gradient)
void Init()
Common (re-)initialization code of this class (must be non-virtual function!)
virtual ParameterList Parameter() const
Get parameter key/value as string map.
virtual double Evaluate()
Evaluate unweighted energy term.
virtual void Initialize()
Initialize distance measure after input and parameters were set.
virtual bool SetWithoutPrefix(const char *, const char *)
Set parameter value from string.