【发布时间】:2018-09-26 22:27:47
【问题描述】:
我正在将一些伪代码转换为实际的 c++。
假名是:
float ac_ab_0 = acos(clamp(dot(
normalize(c - a),
normalize(b - a)), -1, 1));
我的代码是:
Eigen::Vector3f a = Eigen::Vector3f(0, 0, 0);
Eigen::Vector3f b = Eigen::Vector3f(0, -5.579, -6.747);
Eigen::Vector3f c = Eigen::Vector3f(0, -13.637, -9.751);
我正在尝试:
float ac_ab_0 = acos(std::clamp(std::dot(
normalize(c - a),
normalize(b - a)), -1, 1));
但我卡住了。这行应该是什么:
normalize(c - a)
看起来像Eigen::Vector3f?
【问题讨论】:
-
你的意思是
(c - a).normalized()? .编辑:这是快速参考指南eigen.tuxfamily.org/dox/group__QuickRefPage.html -
我找不到
std::dot的参考 -
什么是 std::dot?
-
查看快速参考指南...
-
std::inner_product