Эйген не может соответствовать унарной функцииC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Эйген не может соответствовать унарной функции

Сообщение Anonymous »


Я столкнулся с проблемой компиляции Eigen 3.4.0.

В частности, у меня есть шаблонная функция для вычисления площади треугольника:

шаблон auto TriangleArea(const Eigen::Matrix& p0, const Eigen::Matrix& p1, const Eigen::Matrix& p2) { const auto e01 = p1 - p0; const auto e02 = p2 - p0; return Eigen::sqrt(e01.dot(e01) * e02.dot(e02) - e01.dot(e02) * e01.dot(e02)) / T{2}; } Этот код приводит к ошибке:

нет соответствующей функции для вызова 'sqrt(Eigen::ScalarBinaryOpTraits::ReturnType)’

Как решить проблему, когда sqrt не найден?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»