在做小游戏时候遇到的一个向量角度问题,折腾了一段时间,复习了一遍向量与三角函数。
向量斜率:tan(x) = 对边/底边 = y2-y1/x2-x1;
向量角度:x = arctan(y2-y1/x2-x1);
以上公式于 左下角起始坐标轴 是能够准确算出向量斜率和角度。
但计算机坐标轴起始位置在左上角,如下图。
但通过arctan(x2-x1/y2-y1)能准确算出向量角度x,十分不解。
在做小游戏时候遇到的一个向量角度问题,折腾了一段时间,复习了一遍向量与三角函数。
向量斜率:tan(x) = 对边/底边 = y2-y1/x2-x1;
向量角度:x = arctan(y2-y1/x2-x1);
以上公式于 左下角起始坐标轴 是能够准确算出向量斜率和角度。
但计算机坐标轴起始位置在左上角,如下图。
但通过arctan(x2-x1/y2-y1)能准确算出向量角度x,十分不解。
1 回答851 阅读✓ 已解决
1 回答1.1k 阅读
2 回答773 阅读
3 回答1.3k 阅读
2 回答617 阅读
2 回答601 阅读
1 回答680 阅读
在学生时期,你学习三角函数的时候,坐标系是在左下角的,然后正切公式

tanθ=y/x,当坐标系顺时针旋转90度后,y的值就是现在你的x2-x1,x的值就变成y2-y1,所以tanθ=(x2-x1)/(y2-y1),明白了吧。如果不习惯,你把你当前的坐标系逆时针旋转90度放回左下角就很清楚了。