35#if defined(AngleLinearMinimizer_RECURSES)
36#error Recursive header files inclusion detected in AngleLinearMinimizer.h
39#define AngleLinearMinimizer_RECURSES
41#if !defined AngleLinearMinimizer_h
43#define AngleLinearMinimizer_h
49#include "DGtal/base/Common.h"
50#include "DGtal/math/AngleComputer.h"
51#include "DGtal/arithmetic/ModuloComputer.h"
128 void init(
unsigned int nbMax );
178 double getEnergy(
unsigned int i1,
unsigned int i2 )
const;
223 double optimize(
unsigned int i1,
unsigned int i2 );
250 virtual void oneStep(
unsigned int i1,
unsigned int i2 );
386 virtual void oneStep(
unsigned int i1,
unsigned int i2 );
444 virtual void oneStep(
unsigned int i1,
unsigned int i2 );
502 virtual void oneStep(
unsigned int i1,
unsigned int i2 );
543#include "DGtal/math/AngleLinearMinimizer.ih"
550#undef AngleLinearMinimizer_RECURSES
virtual double lastDelta() const
virtual void selfDisplay(std::ostream &aStream) const
virtual void oneStep(unsigned int i1, unsigned int i2)
virtual ~AngleLinearMinimizerByAdaptiveStepGradientDescent()
AngleLinearMinimizerByAdaptiveStepGradientDescent(double step=0.1)
AngleLinearMinimizerByGradientDescent(double step=0.1)
virtual double lastDelta() const
virtual void oneStep(unsigned int i1, unsigned int i2)
virtual ~AngleLinearMinimizerByGradientDescent()
virtual void selfDisplay(std::ostream &aStream) const
AngleLinearMinimizerByRelaxation()
virtual void oneStep(unsigned int i1, unsigned int i2)
virtual ~AngleLinearMinimizerByRelaxation()
virtual void selfDisplay(std::ostream &aStream) const
virtual double lastDelta() const
Aim: Used to minimize the angle variation between different angles while taking into accounts min and...
void selfDisplay(std::ostream &out) const
AngleLinearMinimizer(const AngleLinearMinimizer &other)
std::vector< double > getFormerGradient() const
void setSize(unsigned int nb)
ValueInfo & rw(unsigned int i)
void setIsCurveOpen(bool is_curve_open=false)
double getFormerEnergy(unsigned int i1, unsigned int i2) const
std::string className() const
unsigned int maxSize() const
virtual void oneStep(unsigned int i1, unsigned int i2)
void init(unsigned int nbMax)
std::vector< double > getGradient() const
virtual ~AngleLinearMinimizer()
AngleLinearMinimizer & operator=(const AngleLinearMinimizer &other)
unsigned int size() const
const ValueInfo & ro(unsigned int i) const
double optimize(unsigned int i1, unsigned int i2)
virtual double lastDelta() const
double getEnergy(unsigned int i1, unsigned int i2) const
DGtal is the top-level namespace which contains all DGtal functions and types.
std::ostream & operator<<(std::ostream &out, const ClosedIntegerHalfPlane< TSpace > &object)