【发布时间】:2017-08-12 22:51:45
【问题描述】:
我正在尝试使用指数来计算 z 坐标在屏幕上与对象的基本 z 坐标之间的距离,因为对象越远,对象移开的速度越慢,反之亦然越来越近了,它加速了。但是这样做所涉及的计算需要一个负双基数来加倍幂,这可能是负数,也可能不是负数
Math.pow(-1.1, -(z-25))+10.8347
如果我每 1.5 使用 -10 到 20 之间的数字,它会给出这些答案
-10.0 = -17.26773684806433
-8.5 = NaN
-7.0 = 31.948476745352608
-5.5 = NaN
-4.0 = -5.028392971714952
-2.5 = NaN
-1.0 = 22.752876537727232
0.5 = NaN
2.0 = 1.8803975674476092
3.5 = NaN
5.0 = 17.56219994932561
6.5 = NaN
8.0 = 5.780229715007055
9.5 = NaN
11.0 = 14.632198335832413
12.5 = NaN
14.0 = 7.981583293889997
15.5 = NaN
17.0 = 12.978288810000002
18.5 = NaN
20.0 = 9.22419
当使用desmos时,我应该得到一个很好的慢指数,每个人都有答案。但这里的计算只能工作输入是一个偶数整数,小数给出NaN,奇数似乎在做自己的事情,所以这里唯一正确的数字是-10、-4、2、8、14、20,把这些答案到 excel 中,他们的答案显示指数,但我需要这个方程来处理几乎所有的数字。
【问题讨论】:
-
你read the javadocs for Math.pow了吗? “如果第一个参数是有限的并且小于零……[并且]如果第二个参数是有限的而不是整数,那么结果是 NaN。”
-
那么有没有一种方法可以让我从其他地方获取我的计算?
-
双打,没有。例如,
Pow.math(x, 1.5)是Pow.math(x, 3./2.)。这意味着 x 的平方根,立方。如果 x 是负数,它的平方根是一个虚数——双精度数不能表达这些。 -
喜欢使用来自 desmos 等网站的答案
标签: java 3d double exponential negative-number