00001 #ifndef vnl_rotation_matrix_h_ 00002 #define vnl_rotation_matrix_h_ 00003 // This is vxl/vnl/vnl_rotation_matrix.h 00004 00005 //: 00006 // \file 00007 // \brief Functions to compute the exponential of a skew 3x3 matrix [x]. 00008 // \author Unknown 00009 // The result is a (special) orthogonal 3x3 matrix which is a 00010 // rotation about the axis x, by an angle equal to ||x||. 00011 00012 template <class T> class vnl_vector; 00013 template <class T> class vnl_matrix; 00014 //#include <vnl/vnl_vector.h> 00015 //#include <vnl/vnl_matrix.h> 00016 00017 bool vnl_rotation_matrix(double const axis[3], double **R); 00018 bool vnl_rotation_matrix(double const axis[3], double *R0, double *R1, double *R2); 00019 bool vnl_rotation_matrix(double const axis[3], double R[3][3]); 00020 bool vnl_rotation_matrix(vnl_vector<double> const &axis, vnl_matrix<double> &R); 00021 00022 vnl_matrix<double> vnl_rotation_matrix(vnl_vector<double> const &axis); 00023 00024 #endif // vnl_rotation_matrix_h_