Public Member Functions | Static Public Member Functions | Protected Attributes | Private Member Functions | List of all members
vcsl_cylindrical_to_cartesian_3d Class Reference

Convert 3D cartesian coordinates to cylindrical coordinates. More...

#include <vcsl_cylindrical_to_cartesian_3d.h>

Inheritance diagram for vcsl_cylindrical_to_cartesian_3d:
Inheritance graph
[legend]

Public Member Functions

 ~vcsl_cylindrical_to_cartesian_3d () override=default
 
bool is_invertible (double time) const override
 Is ‘this’ invertible at time ‘time’?. More...
 
bool is_valid () const override
 Is ‘this’ correctly set ?. More...
 
vnl_vector< double > execute (const vnl_vector< double > &v, double time) const override
 Image of ‘v’ by ‘this’. More...
 
vnl_vector< double > inverse (const vnl_vector< double > &v, double time) const override
 Image of ‘v’ by the inverse of ‘this’. More...
 
std::vector< double > beat () const
 Return the list of time clocks. More...
 
unsigned int duration () const
 Return the time duration. More...
 
std::vector< vcsl_interpolatorinterpolators () const
 Return the list of interpolators. More...
 
bool valid_time (double time) const
 Is ‘time’ between the two time bounds ?. More...
 
int matching_interval (double time) const
 Return the index of the beat inferior or equal to ‘time’. More...
 
void set_beat (std::vector< double > const &new_beat)
 Set the list of time clocks. More...
 
void set_interpolators (std::vector< vcsl_interpolator > const &i)
 Set the list of interpolators. More...
 
void set_static ()
 Empty the time clock and interpolators, thereby making the transf static. More...
 
double lsi (double v0, double v1, int index, double time) const
 Linear interpolation on scalar values. More...
 
vnl_vector< double > lvi (const vnl_vector< double > &v0, const vnl_vector< double > &v1, int index, double time) const
 Linear interpolation on vnl_vectors. More...
 
vnl_matrix< double > lmi (const vnl_matrix< double > &m0, const vnl_matrix< double > &m1, int index, double time) const
 Linear interpolation on vnl_matrices. More...
 
vnl_quaternion< double > lqi (const vnl_quaternion< double > &v0, const vnl_quaternion< double > &v1, int index, double time) const
 Linear interpolation on quaternions. More...
 
void ref ()
 
void unref ()
 
long get_references () const
 
bool is_referenced () const
 

Static Public Member Functions

static vcsl_cylindrical_to_cartesian_3d_sptr instance ()
 Return the reference to the unique vcsl_length object. More...
 

Protected Attributes

std::vector< double > beat_
 List of time clocks. More...
 
std::vector< vcsl_interpolatorinterpolator_
 

Private Member Functions

 vcsl_cylindrical_to_cartesian_3d ()=default
 

Detailed Description

Convert 3D cartesian coordinates to cylindrical coordinates.

Definition at line 20 of file vcsl_cylindrical_to_cartesian_3d.h.

Constructor & Destructor Documentation

◆ vcsl_cylindrical_to_cartesian_3d()

vcsl_cylindrical_to_cartesian_3d::vcsl_cylindrical_to_cartesian_3d ( )
privatedefault

◆ ~vcsl_cylindrical_to_cartesian_3d()

vcsl_cylindrical_to_cartesian_3d::~vcsl_cylindrical_to_cartesian_3d ( )
overridedefault

Member Function Documentation

◆ beat()

std::vector<double> vcsl_spatial_transformation::beat ( ) const
inlineinherited

Return the list of time clocks.

Definition at line 65 of file vcsl_spatial_transformation.h.

◆ duration()

unsigned int vcsl_spatial_transformation::duration ( ) const
inlineinherited

Return the time duration.

Definition at line 68 of file vcsl_spatial_transformation.h.

◆ execute()

vnl_vector< double > vcsl_cylindrical_to_cartesian_3d::execute ( const vnl_vector< double > &  v,
double  time 
) const
overridevirtual

Image of ‘v’ by ‘this’.

REQUIRE: is_valid() REQUIRE: v.size()==3 Pure virtual function of vcsl_spatial_transformation

Implements vcsl_spatial_transformation.

Definition at line 27 of file vcsl_cylindrical_to_cartesian_3d.cxx.

◆ instance()

vcsl_cylindrical_to_cartesian_3d_sptr vcsl_cylindrical_to_cartesian_3d::instance ( )
static

Return the reference to the unique vcsl_length object.

Definition at line 83 of file vcsl_cylindrical_to_cartesian_3d.cxx.

◆ interpolators()

std::vector<vcsl_interpolator> vcsl_spatial_transformation::interpolators ( ) const
inlineinherited

Return the list of interpolators.

Definition at line 71 of file vcsl_spatial_transformation.h.

◆ inverse()

vnl_vector< double > vcsl_cylindrical_to_cartesian_3d::inverse ( const vnl_vector< double > &  v,
double  time 
) const
overridevirtual

Image of ‘v’ by the inverse of ‘this’.

REQUIRE: is_valid() REQUIRE: is_invertible(time) REQUIRE: v.size()==3 Pure virtual function of vcsl_spatial_transformation

Implements vcsl_spatial_transformation.

Definition at line 57 of file vcsl_cylindrical_to_cartesian_3d.cxx.

◆ is_invertible()

bool vcsl_cylindrical_to_cartesian_3d::is_invertible ( double  time) const
overridevirtual

Is ‘this’ invertible at time ‘time’?.

REQUIRE: valid_time(time) Pure virtual function of vcsl_spatial_transformation

Implements vcsl_spatial_transformation.

Definition at line 13 of file vcsl_cylindrical_to_cartesian_3d.cxx.

◆ is_valid()

bool vcsl_cylindrical_to_cartesian_3d::is_valid ( ) const
inlineoverridevirtual

Is ‘this’ correctly set ?.

Always true. Virtual function of vcsl_spatial_transformation

Reimplemented from vcsl_spatial_transformation.

Definition at line 46 of file vcsl_cylindrical_to_cartesian_3d.h.

◆ lmi()

vnl_matrix< double > vcsl_spatial_transformation::lmi ( const vnl_matrix< double > &  m0,
const vnl_matrix< double > &  m1,
int  index,
double  time 
) const
inherited

Linear interpolation on vnl_matrices.

Definition at line 94 of file vcsl_spatial_transformation.cxx.

◆ lqi()

vnl_quaternion< double > vcsl_spatial_transformation::lqi ( const vnl_quaternion< double > &  v0,
const vnl_quaternion< double > &  v1,
int  index,
double  time 
) const
inherited

Linear interpolation on quaternions.

Definition at line 121 of file vcsl_spatial_transformation.cxx.

◆ lsi()

double vcsl_spatial_transformation::lsi ( double  v0,
double  v1,
int  index,
double  time 
) const
inherited

Linear interpolation on scalar values.

Definition at line 53 of file vcsl_spatial_transformation.cxx.

◆ lvi()

vnl_vector< double > vcsl_spatial_transformation::lvi ( const vnl_vector< double > &  v0,
const vnl_vector< double > &  v1,
int  index,
double  time 
) const
inherited

Linear interpolation on vnl_vectors.

Definition at line 69 of file vcsl_spatial_transformation.cxx.

◆ matching_interval()

int vcsl_spatial_transformation::matching_interval ( double  time) const
inherited

Return the index of the beat inferior or equal to ‘time’.

REQUIRE: valid_time(time)

Definition at line 22 of file vcsl_spatial_transformation.cxx.

◆ set_beat()

void vcsl_spatial_transformation::set_beat ( std::vector< double > const &  new_beat)
inlineinherited

Set the list of time clocks.

Definition at line 109 of file vcsl_spatial_transformation.h.

◆ set_interpolators()

void vcsl_spatial_transformation::set_interpolators ( std::vector< vcsl_interpolator > const &  i)
inlineinherited

Set the list of interpolators.

Definition at line 112 of file vcsl_spatial_transformation.h.

◆ set_static()

void vcsl_spatial_transformation::set_static ( )
inherited

Empty the time clock and interpolators, thereby making the transf static.

Definition at line 44 of file vcsl_spatial_transformation.cxx.

◆ valid_time()

bool vcsl_spatial_transformation::valid_time ( double  time) const
inherited

Is ‘time’ between the two time bounds ?.

Definition at line 12 of file vcsl_spatial_transformation.cxx.

Member Data Documentation

◆ beat_

std::vector<double> vcsl_spatial_transformation::beat_
protectedinherited

List of time clocks.

Definition at line 147 of file vcsl_spatial_transformation.h.

◆ interpolator_

std::vector<vcsl_interpolator> vcsl_spatial_transformation::interpolator_
protectedinherited

Definition at line 148 of file vcsl_spatial_transformation.h.


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