libcrn  3.9.5
A document image processing library
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | List of all members
crn::CubicSpline Class Reference

Cubic spline interpolation. More...

#include <CRNCubicSpline.h>

+ Inheritance diagram for crn::CubicSpline:
+ Collaboration diagram for crn::CubicSpline:

Public Types

enum  Extrapolation { Extrapolation::LINEAR, Extrapolation::CUBIC }
 Extrapolation modes. More...
 

Public Member Functions

template<typename Iter >
 CubicSpline (Iter beg, Iter en)
 Constructor from a list of points. More...
 
 CubicSpline (const CubicSpline &)=default
 
 CubicSpline (CubicSpline &&)=default
 
virtual ~CubicSpline () override
 
CubicSplineoperator= (const CubicSpline &)=default
 
CubicSplineoperator= (CubicSpline &&)=default
 
void SetExtrapolationMode (Extrapolation ex) noexcept
 Sets the behaviour for points before the first control point and after the last control point. More...
 
virtual double operator[] (double x) const override
 Gets ordinate at x. More...
 
const std::vector
< crn::Point2DDouble > & 
GetData () const noexcept
 Access to the sorted control point. More...
 
- Public Member Functions inherited from crn::Cartesian2DFunction
virtual ~Cartesian2DFunction () override
 
virtual int operator[] (int x) const
 Gets ordinate at x. More...
 
- Public Member Functions inherited from crn::Object
virtual ~Object ()=default
 

Detailed Description

Cubic spline interpolation.

Creates a cubic spline model representing a cloud of points.

Version
1.0
Author
Yann LEYDIER
Date
Sep 2011

Definition at line 40 of file CRNCubicSpline.h.

Member Enumeration Documentation

Extrapolation modes.

Enumerator
LINEAR 
CUBIC 

Definition at line 44 of file CRNCubicSpline.h.

Constructor & Destructor Documentation

template<typename Iter >
crn::CubicSpline::CubicSpline ( Iter  beg,
Iter  en 
)
inline

Constructor from a list of points.

Exceptions
crn::ExceptionDimensionnot enough samples
Parameters
[in]begthe first element
[in]enthe element after the last

Definition at line 51 of file CRNCubicSpline.h.

crn::CubicSpline::CubicSpline ( const CubicSpline )
default
crn::CubicSpline::CubicSpline ( CubicSpline &&  )
default
virtual crn::CubicSpline::~CubicSpline ( )
inlineoverridevirtual

Definition at line 64 of file CRNCubicSpline.h.

Member Function Documentation

const std::vector<crn::Point2DDouble>& crn::CubicSpline::GetData ( ) const
inlinenoexcept

Access to the sorted control point.

Definition at line 77 of file CRNCubicSpline.h.

CubicSpline& crn::CubicSpline::operator= ( const CubicSpline )
default
CubicSpline& crn::CubicSpline::operator= ( CubicSpline &&  )
default
double CubicSpline::operator[] ( double  x) const
overridevirtual

Gets ordinate at x.

Implements crn::Cartesian2DFunction.

Definition at line 59 of file CRNCubicSpline.cpp.

void crn::CubicSpline::SetExtrapolationMode ( Extrapolation  ex)
inlinenoexcept

Sets the behaviour for points before the first control point and after the last control point.

Definition at line 69 of file CRNCubicSpline.h.


The documentation for this class was generated from the following files: