Volume Cartographer 2.28.0
Public Member Functions | Private Attributes | List of all members
volcart::segmentation::CubicSpline Class Reference

Cubic spline. More...

#include <vc/segmentation/lrps/CubicSpline.hpp>

Public Member Functions

 CubicSpline ()=default
 
 CubicSpline (const std::vector< double > &x, const std::vector< double > &y)
 
 CubicSpline (const std::vector< Voxel > &vs)
 
 ~CubicSpline ()=default
 
 CubicSpline (const CubicSpline &)=default
 
auto operator= (const CubicSpline &) -> CubicSpline &=default
 
auto operator() (double t) const -> Pixel
 Spline evaluation at t-space value t in [0, 1]
 

Private Attributes

std::vector< double > aX_
 
std::vector< double > bX_
 
std::vector< double > cX_
 
std::vector< double > dX_
 
std::vector< double > aY_
 
std::vector< double > bY_
 
std::vector< double > cY_
 
std::vector< double > dY_
 
std::vector< double > rangeXY_
 
std::vector< double > subsegLens_
 
std::vector< double > cumuLens_
 

Detailed Description

Cubic spline.

Author
Julian Schilliger
Date
September 2023

Cubic spline class which uses multiple threads (via OpenMP, when available) to fit to the provided knots.

Definition at line 21 of file CubicSpline.hpp.

Constructor & Destructor Documentation

◆ CubicSpline() [1/4]

volcart::segmentation::CubicSpline::CubicSpline ( )
default

Default constructor

◆ CubicSpline() [2/4]

volcart::segmentation::CubicSpline::CubicSpline ( const std::vector< double > &  x,
const std::vector< double > &  y 
)

Construct and fit to separated x, y knot pairs

◆ CubicSpline() [3/4]

volcart::segmentation::CubicSpline::CubicSpline ( const std::vector< Voxel > &  vs)
explicit

Construct and fit to a set of knots

◆ ~CubicSpline()

volcart::segmentation::CubicSpline::~CubicSpline ( )
default

Default destructor

◆ CubicSpline() [4/4]

volcart::segmentation::CubicSpline::CubicSpline ( const CubicSpline )
default

Copy constructor

Member Function Documentation

◆ operator=()

auto volcart::segmentation::CubicSpline::operator= ( const CubicSpline ) -> CubicSpline &=default
default

Copy assignment operator

Member Data Documentation

◆ aX_

std::vector<double> volcart::segmentation::CubicSpline::aX_
private

x params

Definition at line 46 of file CubicSpline.hpp.

◆ aY_

std::vector<double> volcart::segmentation::CubicSpline::aY_
private

y params

Definition at line 48 of file CubicSpline.hpp.

◆ bX_

std::vector<double> volcart::segmentation::CubicSpline::bX_
private

Definition at line 46 of file CubicSpline.hpp.

◆ bY_

std::vector<double> volcart::segmentation::CubicSpline::bY_
private

Definition at line 48 of file CubicSpline.hpp.

◆ cumuLens_

std::vector<double> volcart::segmentation::CubicSpline::cumuLens_
private

Cumulative lengths of subsegments

Definition at line 54 of file CubicSpline.hpp.

◆ cX_

std::vector<double> volcart::segmentation::CubicSpline::cX_
private

Definition at line 46 of file CubicSpline.hpp.

◆ cY_

std::vector<double> volcart::segmentation::CubicSpline::cY_
private

Definition at line 48 of file CubicSpline.hpp.

◆ dX_

std::vector<double> volcart::segmentation::CubicSpline::dX_
private

Definition at line 46 of file CubicSpline.hpp.

◆ dY_

std::vector<double> volcart::segmentation::CubicSpline::dY_
private

Definition at line 48 of file CubicSpline.hpp.

◆ rangeXY_

std::vector<double> volcart::segmentation::CubicSpline::rangeXY_
private

Percent position of knots in total number of knots

Definition at line 50 of file CubicSpline.hpp.

◆ subsegLens_

std::vector<double> volcart::segmentation::CubicSpline::subsegLens_
private

Lengths of subsegments

Definition at line 52 of file CubicSpline.hpp.


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