6 # include <vcl_msvc_warnings.h> 37 double theta=
v.get(1);
40 double x=rho*std::cos(theta);
41 double y=rho*std::sin(theta);
71 double rho=std::sqrt(x*x+y*y);
72 double theta=std::atan2(y,x);
static vcsl_cylindrical_to_cartesian_3d_sptr instance()
Return the reference to the unique vcsl_length object.
vnl_vector< double > execute(const vnl_vector< double > &v, double time) const override
Image of ‘v’ by ‘this’.
Convert 3D cartesian coordinates to cylindrical coordinates.
bool is_invertible(double time) const override
Is ‘this’ invertible at time ‘time’?.
vnl_vector< double > inverse(const vnl_vector< double > &v, double time) const override
Image of ‘v’ by the inverse of ‘this’.
vcsl_cylindrical_to_cartesian_3d()=default
bool is_valid() const override
Is ‘this’ correctly set ?.