23 #include <pybind11/pybind11.h>
24 #include <pybind11/stl.h>
25 #include <pybind11/numpy.h>
28 void add_mathsNamespace ( pybind11::module& pyProSHADE )
30 pyProSHADE.def (
"getAngleAxisFromEulerAngles",
31 [] ( proshade_double eulerAlpha, proshade_double eulerBeta, proshade_double eulerGamma ) -> pybind11::array_t < proshade_double >
34 proshade_double* retVals =
new proshade_double[4];
38 proshade_double* rMat =
new proshade_double[9];
40 proshade_double aX, aY, aZ, aA;
56 pybind11::capsule pyCapsuleAAFromEA ( retVals, [](
void *f ) { proshade_double* foo =
reinterpret_cast< proshade_double*
> ( f );
delete foo; } );
59 pybind11::array_t < proshade_double > retArr = pybind11::array_t < proshade_double > ( { 4 },
60 {
sizeof(proshade_double) },
66 },
"This function converts the ZYZ Euler angles to angle-axis representation, returning numpy.ndarray with the following four numbers: [0] = x-axis; [1] = y-axis; [2] = z-axis; [3] = angle." );