|
6
|
| Daren Thomas · 技术社区 · 16 年前 |
|
|
1
9
这在Java中工作,计算八个方向的值0…7:
结果映射到指南针如下:
|
|
|
3
5
无需执行atan函数。 如果你这样做:y/x,你会得到这条线的斜率。根据你得到的数字判断,你可以确定角度/八度。 对于正x(x>0)
以及一个类似的负x列表
我不得不挖掘一下。这是我使用的一个高度优化的例程(用于手机游戏)。 输入:x1,y1=向量的起点 输出(0-7)=0=北,1=西北,2=西,。..等等
这将产生以下输出:
(测试的向量可能看起来选择得很奇怪,但我对它们进行了一些调整,使其在一个八分位数中清晰可见,而不是在精确的边界上) |
|
|
4
4
这个不使用atan2,每次通话最多做4次比较和2个产品。在4个内部块中比较x和y(我只在第一个块中编辑了它),可以精确地减少到4次比较和每次调用1个产品。
|
|
|
Muhammad Umer · 为什么这个随机数猜谜游戏模拟产生5.8 1 年前 |
|
|
Alisa Petrova · 在有向图中更改一对顶点以创建循环 1 年前 |
|
|
D W · Python-将浮点数从2转换为10到100位小数 1 年前 |
|
|
Bartol · 确定python龟图形中的角度 1 年前 |
|
|
randomAlgo · 将弹簧设置为相同长度的成本最低 1 年前 |
|
Fyodor · 在C中使用sin和cos计算数学表达式不正确? 1 年前 |
|
Sergio · python中大量数字的乘法 1 年前 |