43 addUsageLine(
"Calculate the Euler angles after applying a rotation to a geometry set from a metadata.");
48 addParamsLine(
" [-o <metadata>] : Output metadata file, if not provided result will overwrite input file");
50 addParamsLine(
" or --euler <rot> <tilt> <psi> : Rotate with these Euler angles");
51 addParamsLine(
" or --alignZ <x> <y> <z> : Align (x,y,z) with Z axis");
52 addParamsLine(
" or --axis <ang> <x=0> <y=0> <z=1> : Rotate <ang> degrees around (x,y,z)");
53 addParamsLine(
"[--write_matrix] : Print transformation matrix to screen");
55 addExampleLine(
"Modify the geometry of a selfile applying a rotation of 0.1 degrees around (x,y,z)=(1,1,1) direction:",
false);
56 addExampleLine(
"xmipp_angular_rotate -i selfile.sel -o newselfile.sel --axis 0.1 1 1 1");
108 for (
auto& input : mdIn)
117 mdOut.
addRow(dynamic_cast<MDRowVec&>(input));
120 std::cout << T << std::endl;
double getDoubleParam(const char *param, int arg=0)
void Euler_angles2matrix(T alpha, T beta, T gamma, Matrix2D< T > &A, bool homogeneous)
void addSeeAlsoLine(const char *seeAlso)
void addKeywords(const char *keywords)
const char * getParam(const char *param, int arg=0)
void addExampleLine(const char *example, bool verbatim=true)
bool checkParam(const char *param)
void addUsageLine(const char *line, bool verbatim=false)
void addParamsLine(const String &line)