00001 //: 00002 // \file 00003 // \author Tim Cootes 00004 // \brief Generate pure 3x3 rotation matrices 00005 00006 #ifndef m23d_rotation_matrix_h_ 00007 #define m23d_rotation_matrix_h_ 00008 00009 #include <vnl/vnl_matrix.h> 00010 00011 //: Generate 3x3 matrix which applies a rotation about the x axis 00012 vnl_matrix<double> m23d_rotation_matrix_x(double A); 00013 00014 //: Generate 3x3 matrix which applies a rotation about the y axis 00015 vnl_matrix<double> m23d_rotation_matrix_y(double A); 00016 00017 //: Generate 3x3 matrix which applies a rotation about the z axis 00018 vnl_matrix<double> m23d_rotation_matrix_z(double A); 00019 00020 //: Generate 3x3 matrix which applies rotations about the x,y and z axes 00021 // Order of application: x,y, z. 00022 vnl_matrix<double> m23d_rotation_matrix(double Ax, double Ay, double Az); 00023 00024 00025 #endif // m23d_rotation_matrix_h_