Чтобы уточнить, есть две разные функции тригонометрии c для загара.
Теперь eigen
поддерживает только atan()
. Которая вычисляет ар c тангенс.
Вот почему вы получаете ошибку "class Eigen::Matrix has no member "atan2""
.
Однако, используя заголовочный файл #include <cmath>
или #include <valarray>
, вы можете использовать функцию atan2()
. valarray
также включает atan2()
.
Например, используя файл заголовка #include <valarray>
#include <iostream>
#include <valarray>
int main()
{
double y[] = { 2.0, 1.6, -3.8, 2.3 };
double x[] = { 3.0, -2.4, 2.0, -1.8 };
std::valarray<double> ycoords(y, 4);
std::valarray<double> xcoords(x, 4);
//Results go to valarray
std::valarray<double> res = atan2(ycoords, xcoords);
// print results of atan2() function
std::cout << "results:";
for (size_t i = 0; i < res.size(); ++i)
std::cout << ' ' << res[i];
std::cout << ' ';
return 0;
}