gpt4 book ai didi

c++ - 在 C++ 中计算两点之间的角度,得到奇怪的结果

转载 作者:行者123 更新时间:2023-11-28 06:21:48 25 4
gpt4 key购买 nike

我正在尝试在 visual studio 2013 中使用 OpenCV C++ 计算两点之间的角度。一个点是跟踪对象,另一个是我单击鼠标的位置。然而,在我的代码中,我得到了一个看起来不正确的非常长且波动的答案......

代码摘录:

float angle = (atan2(mousex - posX, mousey - posY) * 180) / 3.14159265;
sprintf_s(textA, "%d", angle);
putText(imgOriginal, textA, Point(posX, posY + 20),
FONT_HERSHEY_COMPLEX_SMALL, 0.8, Scalar(200, 200, 250), 1, CV_AA);

我已经包含但仍然没有结果。

我得到的结果在 50368 和 10732 之间波动(在同一点)。

因此,如果有人能帮助我,我将不胜感激!

谢谢。

最佳答案

您的代码有很多问题。

正如@kuroineko 在评论中提到的:

atan2 首先获取 y 分量。如果您以错误的顺序传递参数,则会计算旋转 90° 的角度。此外,您的角度是 float,因此在您的 sprintf 中使用 %d 将输出垃圾。

关于c++ - 在 C++ 中计算两点之间的角度,得到奇怪的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29190639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com