CVB++ 14.0
AlignmentConfiguration Class Reference

A set of parameters that configures an alignment operation. More...

#include <cvb/foundation/curve.hpp>

Public Member Functions

 AlignmentConfiguration (size_t maxIterations, double tolerance, double minImprovement, double correspondence, PreAlignmentMode mode) noexcept
 Constructor for an alignment configuration. More...
 
size_t MaxIterations () const noexcept
 Gets the maximum iterations of ICP. More...
 
void SetMaxIterations (size_t maxIterations) noexcept
 Sets the maximum iterations of ICP. More...
 
double Tolerance () const noexcept
 Gets the value for early stopping criteria. More...
 
void SetTolerance (double tolerance) noexcept
 Sets the value for early stopping criteria. More...
 
double MinImprovement () const noexcept
 Gets the value for early stopping criteria. More...
 
void SetMinImprovement (double minImprovement) noexcept
 Sets the value for early stopping criteria. More...
 
double Correspondence () const noexcept
 Gets the minimum value for correspondence of two points to be considered for alignment. More...
 
void SetCorrespondence (double correspondence) noexcept
 Sets the minimum value for correspondence of two points to be considered for alignment. More...
 
PreAlignmentMode Mode () const noexcept
 Gets the pre-align mode. More...
 
void SetMode (PreAlignmentMode mode) noexcept
 Sets the pre-align mode. More...
 

Detailed Description

A set of parameters that configures an alignment operation.

Constructor & Destructor Documentation

◆ AlignmentConfiguration()

AlignmentConfiguration ( size_t  maxIterations,
double  tolerance,
double  minImprovement,
double  correspondence,
PreAlignmentMode  mode 
)
inlinenoexcept

Constructor for an alignment configuration.

Parameters
[in]maxIterationsMaximum iterations of ICP.
[in]toleranceValue for early stopping criteria.
[in]minImprovementValue for early stopping criteria.
[in]correspondenceMinimum value for correspondence of two points to be considered for alignment.
[in]modeSpecifies if the pre-alignment needs to be executed.
Exceptions
Doesnot throw any exception.

Member Function Documentation

◆ Correspondence()

double Correspondence ( ) const
inlinenoexcept

Gets the minimum value for correspondence of two points to be considered for alignment.

Returns
The minimum value for correspondence of two points to be considered for alignment.
Exceptions
Doesnot throw any exception.

◆ MaxIterations()

size_t MaxIterations ( ) const
inlinenoexcept

Gets the maximum iterations of ICP.

Returns
The maximum iterations of ICP.
Exceptions
Doesnot throw any exception.

◆ MinImprovement()

double MinImprovement ( ) const
inlinenoexcept

Gets the value for early stopping criteria.

Returns
The value for early stopping criteria.
Exceptions
Doesnot throw any exception.

If the norm of alignment changes less than this value, the alignment is considered converged.

◆ Mode()

PreAlignmentMode Mode ( ) const
inlinenoexcept

Gets the pre-align mode.

Returns
Pre-align mode.
Exceptions
Doesnot throw any exception.

◆ SetCorrespondence()

void SetCorrespondence ( double  correspondence)
inlinenoexcept

Sets the minimum value for correspondence of two points to be considered for alignment.

Parameters
[in]correspondenceThe minimum value for correspondence of two points to be considered for alignment.
Exceptions
Doesnot throw any exception.

◆ SetMaxIterations()

void SetMaxIterations ( size_t  maxIterations)
inlinenoexcept

Sets the maximum iterations of ICP.

Parameters
[in]maxIterationsThe maximum iterations of ICP.
Exceptions
Doesnot throw any exception.

◆ SetMinImprovement()

void SetMinImprovement ( double  minImprovement)
inlinenoexcept

Sets the value for early stopping criteria.

Parameters
[in]minImprovementThe value for early stopping criteria.
Exceptions
Doesnot throw any exception.

◆ SetMode()

void SetMode ( PreAlignmentMode  mode)
inlinenoexcept

Sets the pre-align mode.

Parameters
[in]modePre-align mode.
Exceptions
Doesnot throw any exception.

◆ SetTolerance()

void SetTolerance ( double  tolerance)
inlinenoexcept

Sets the value for early stopping criteria.

Parameters
[in]toleranceThe value for early stopping criteria.
Exceptions
Doesnot throw any exception.

◆ Tolerance()

double Tolerance ( ) const
inlinenoexcept

Gets the value for early stopping criteria.

Returns
The value for early stopping criteria.
Exceptions
Doesnot throw any exception.

If the norm of alignment falls below this value, the alignment is considered successful.