![]() |
aimsalgo
5.1.2
Neuroimaging image processing
|
Spline interpolation of volumes with simple accessors to interpolated values. More...
#include <aims/interpolation/interpolatedvolume.h>
Public Types | |
typedef Point3dd | Vector |
typedefs More... | |
typedef carto::VolumeRef< double > | Matrix |
Public Member Functions | |
InterpolatedVolume () | |
Constructors / Destructors / CopyDefault constructor: allocates no data. More... | |
template<typename T > | |
InterpolatedVolume (const carto::Volume< T > &vol, unsigned order=3) | |
Constructor from Volume. More... | |
template<typename T > | |
InterpolatedVolume (const carto::VolumeRef< T > &vol, unsigned order=3) | |
Constructor from VolumeRef. More... | |
InterpolatedVolume (const InterpolatedVolume &other) | |
Copy constructor (underlying data is fully copied and not shared between the volumes) More... | |
virtual | ~InterpolatedVolume () |
Destructor. More... | |
InterpolatedVolume & | operator= (const InterpolatedVolume &other) |
Assignment by copy (underlying data is fully copied and not shared between the volumes) More... | |
double | at (double x, double y=0., double z=0., long t=0) const |
Access interpolated values. More... | |
Vector | derivative (double x, double y=0., double z=0., long t=0) const |
Matrix | nderivative (unsigned n, double x, double y=0., double z=0., long t=0) const |
double | operator() (double x, double y=0., double z=0., long t=0) const |
Vector | der (double x, double y=0., double z=0., long t=0) const |
Matrix | der2 (double x, double y=0., double z=0., long t=0) const |
Matrix | der3 (double x, double y=0., double z=0., long t=0) const |
double | atMm (double x, double y=0., double z=0., long t=0) const |
Access interpolated values in mm. More... | |
Vector | derivativeMm (double x, double y=0., double z=0., long t=0) const |
Matrix | nderivativeMm (unsigned n, double x, double y=0., double z=0., long t=0) const |
Vector | derMm (double x, double y=0., double z=0., long t=0) const |
Matrix | der2Mm (double x, double y=0., double z=0., long t=0) const |
Matrix | der3Mm (double x, double y=0., double z=0., long t=0) const |
double | getSizeXMm () const |
double | getSizeYMm () const |
double | getSizeZMm () const |
carto::PropertySet & | header () |
Header / Dimension. More... | |
const carto::PropertySet & | header () const |
double | getSizeX () const |
double | getSizeY () const |
double | getSizeZ () const |
long | getSizeT () const |
template<typename T > | |
void | setVolume (const carto::Volume< T > &vol, int order=-1) |
Change interpolated volume. More... | |
template<typename T > | |
void | setVolume (const carto::VolumeRef< T > &vol, int order=-1) |
template<typename T > | |
void | setCoeff (const carto::Volume< T > &vol, int order=-1) |
Change coefficient volume. More... | |
template<typename T > | |
void | setCoeff (const carto::VolumeRef< T > &vol, int order=-1) |
unsigned | order () const |
ParametersInterpolation order. More... | |
bool | empty () const |
Is the volume empty (true if only default constructed) More... | |
void | setRecursiveMode () |
Recursive/Fast/Tabular mode (default is Fast) More... | |
void | setFastMode () |
Recursive/Fast/Tabular mode (default is Fast) More... | |
void | setTabularMode () |
Recursive/Fast/Tabular mode (default is Fast) More... | |
carto::VolumeRef< double > & | coefficients () |
Access to coefficients. More... | |
const carto::VolumeRef< double > & | coefficients () const |
Protected Attributes | |
unsigned | _order |
carto::rc_ptr< BSpline > | _spline |
carto::VolumeRef< double > | _coeff |
Spline interpolation of volumes with simple accessors to interpolated values.
Definition at line 55 of file interpolatedvolume.h.
typedef carto::VolumeRef<double> aims::InterpolatedVolume::Matrix |
Definition at line 60 of file interpolatedvolume.h.
typedefs
Definition at line 59 of file interpolatedvolume.h.
aims::InterpolatedVolume::InterpolatedVolume | ( | ) |
Constructors / Destructors / CopyDefault constructor: allocates no data.
aims::InterpolatedVolume::InterpolatedVolume | ( | const carto::Volume< T > & | vol, |
unsigned | order = 3 |
||
) |
Constructor from Volume.
Definition at line 50 of file interpolatedvolume_d.h.
References setVolume().
aims::InterpolatedVolume::InterpolatedVolume | ( | const carto::VolumeRef< T > & | vol, |
unsigned | order = 3 |
||
) |
Constructor from VolumeRef.
Definition at line 59 of file interpolatedvolume_d.h.
References setVolume().
aims::InterpolatedVolume::InterpolatedVolume | ( | const InterpolatedVolume & | other | ) |
Copy constructor (underlying data is fully copied and not shared between the volumes)
|
virtual |
Destructor.
double aims::InterpolatedVolume::at | ( | double | x, |
double | y = 0. , |
||
double | z = 0. , |
||
long | t = 0 |
||
) | const |
Access interpolated values.
double aims::InterpolatedVolume::atMm | ( | double | x, |
double | y = 0. , |
||
double | z = 0. , |
||
long | t = 0 |
||
) | const |
Access interpolated values in mm.
carto::VolumeRef<double>& aims::InterpolatedVolume::coefficients | ( | ) |
Access to coefficients.
const carto::VolumeRef<double>& aims::InterpolatedVolume::coefficients | ( | ) | const |
Vector aims::InterpolatedVolume::der | ( | double | x, |
double | y = 0. , |
||
double | z = 0. , |
||
long | t = 0 |
||
) | const |
Matrix aims::InterpolatedVolume::der2 | ( | double | x, |
double | y = 0. , |
||
double | z = 0. , |
||
long | t = 0 |
||
) | const |
Matrix aims::InterpolatedVolume::der2Mm | ( | double | x, |
double | y = 0. , |
||
double | z = 0. , |
||
long | t = 0 |
||
) | const |
Matrix aims::InterpolatedVolume::der3 | ( | double | x, |
double | y = 0. , |
||
double | z = 0. , |
||
long | t = 0 |
||
) | const |
Matrix aims::InterpolatedVolume::der3Mm | ( | double | x, |
double | y = 0. , |
||
double | z = 0. , |
||
long | t = 0 |
||
) | const |
Vector aims::InterpolatedVolume::derivative | ( | double | x, |
double | y = 0. , |
||
double | z = 0. , |
||
long | t = 0 |
||
) | const |
Vector aims::InterpolatedVolume::derivativeMm | ( | double | x, |
double | y = 0. , |
||
double | z = 0. , |
||
long | t = 0 |
||
) | const |
Vector aims::InterpolatedVolume::derMm | ( | double | x, |
double | y = 0. , |
||
double | z = 0. , |
||
long | t = 0 |
||
) | const |
bool aims::InterpolatedVolume::empty | ( | ) | const |
Is the volume empty (true if only default constructed)
long aims::InterpolatedVolume::getSizeT | ( | ) | const |
double aims::InterpolatedVolume::getSizeX | ( | ) | const |
double aims::InterpolatedVolume::getSizeXMm | ( | ) | const |
double aims::InterpolatedVolume::getSizeY | ( | ) | const |
double aims::InterpolatedVolume::getSizeYMm | ( | ) | const |
double aims::InterpolatedVolume::getSizeZ | ( | ) | const |
double aims::InterpolatedVolume::getSizeZMm | ( | ) | const |
carto::PropertySet& aims::InterpolatedVolume::header | ( | ) |
Header / Dimension.
const carto::PropertySet& aims::InterpolatedVolume::header | ( | ) | const |
Matrix aims::InterpolatedVolume::nderivative | ( | unsigned | n, |
double | x, | ||
double | y = 0. , |
||
double | z = 0. , |
||
long | t = 0 |
||
) | const |
Matrix aims::InterpolatedVolume::nderivativeMm | ( | unsigned | n, |
double | x, | ||
double | y = 0. , |
||
double | z = 0. , |
||
long | t = 0 |
||
) | const |
double aims::InterpolatedVolume::operator() | ( | double | x, |
double | y = 0. , |
||
double | z = 0. , |
||
long | t = 0 |
||
) | const |
InterpolatedVolume& aims::InterpolatedVolume::operator= | ( | const InterpolatedVolume & | other | ) |
Assignment by copy (underlying data is fully copied and not shared between the volumes)
unsigned aims::InterpolatedVolume::order | ( | ) | const |
ParametersInterpolation order.
Referenced by setCoeff(), and setVolume().
void aims::InterpolatedVolume::setCoeff | ( | const carto::Volume< T > & | vol, |
int | order = -1 |
||
) |
Change coefficient volume.
Definition at line 102 of file interpolatedvolume_d.h.
References order().
void aims::InterpolatedVolume::setCoeff | ( | const carto::VolumeRef< T > & | vol, |
int | order = -1 |
||
) |
Definition at line 93 of file interpolatedvolume_d.h.
void aims::InterpolatedVolume::setFastMode | ( | ) |
Recursive/Fast/Tabular mode (default is Fast)
void aims::InterpolatedVolume::setRecursiveMode | ( | ) |
Recursive/Fast/Tabular mode (default is Fast)
void aims::InterpolatedVolume::setTabularMode | ( | ) |
Recursive/Fast/Tabular mode (default is Fast)
void aims::InterpolatedVolume::setVolume | ( | const carto::Volume< T > & | vol, |
int | order = -1 |
||
) |
Change interpolated volume.
Definition at line 72 of file interpolatedvolume_d.h.
References order().
Referenced by InterpolatedVolume().
void aims::InterpolatedVolume::setVolume | ( | const carto::VolumeRef< T > & | vol, |
int | order = -1 |
||
) |
Definition at line 79 of file interpolatedvolume_d.h.
References _coeff, _order, aims::IIRFilterBase::execute(), and order().
|
protected |
Definition at line 163 of file interpolatedvolume.h.
Referenced by setCoeff(), and setVolume().
|
protected |
Definition at line 161 of file interpolatedvolume.h.
Referenced by setCoeff(), and setVolume().
|
protected |
Definition at line 162 of file interpolatedvolume.h.