我需要在画布上找到两个向量之间的角度。
我在下面附加了一些示例:
javascript - 如何在 Canvas 上找到两个向量之间的夹 Angular ?-LMLPHP

javascript - 如何在 Canvas 上找到两个向量之间的夹 Angular ?-LMLPHP

你能告诉我一些配方吗?我的学校数学有问题:)

最佳答案

基本上,您需要将连接两个向量的点作为起点,其中x = 0和y = 0。

看看这张照片:

javascript - 如何在 Canvas 上找到两个向量之间的夹 Angular ?-LMLPHP

现在我们可以说点A,B和C的x和y值为:


A = 0 | 0
B = 0 | -6
C = 5 | 2


要计算两者的反正切,我们可以利用Math.atan2()函数。请注意,atan2的第一个参数必须为y值。

var firstAngle = Math.atan2(-6, 0);
var secondAngle = Math.atan2(2, 5);


并通过减法获得它们的差异

var angle = secondAngle - firstAngle;


这将返回一个弧度值,您可以将其转换为如下度数:

angle = angle * 180 / Math.PI;

10-08 18:06