Java 以越来越高的速度在曲线的相同距离上移动
我有一个物体,我正试图让它以平滑的“弧形”移动。对象的x值实际上不会更改,但y值会更改。 y值从-108开始,需要达到-37.5。每次迭代我都希望它在更短的时间内移动相同的距离。问题是它需要减速并停在-37.5(这将是运动的一半)。当当前代码运行时,时间保持不变,距离增加。这在第一次迭代中确实有效 这就是我所拥有的:Java 以越来越高的速度在曲线的相同距离上移动,java,math,Java,Math,我有一个物体,我正试图让它以平滑的“弧形”移动。对象的x值实际上不会更改,但y值会更改。 y值从-108开始,需要达到-37.5。每次迭代我都希望它在更短的时间内移动相同的距离。问题是它需要减速并停在-37.5(这将是运动的一半)。当当前代码运行时,时间保持不变,距离增加。这在第一次迭代中确实有效 这就是我所拥有的: private void jump() { int startV = 10; float yVal; float velocity; int air
private void jump() {
int startV = 10;
float yVal;
float velocity;
int airTime = 1;
float currY = -108;
Main main = New Main();
// main.iter is the iteration
velocity = startV * (1 + (main.iter / 10));
while (airtime != 0) {
yVal = yVal + velocity;
velocity = velocity - (1 + (main.iter / 10));
if (currY < yVal) {
airtime++;
}
else {
airtime--;
}
}
yVal = -108;
}
private void jump(){
int-startV=10;
伊瓦尔;
浮速;
int airTime=1;
浮动咖喱=-108;
Main Main=新Main();
//iter是迭代
速度=startV*(1+(main.iter/10));
while(播放时间!=0){
yVal=yVal+速度;
速度=速度-(1+(main.iter/10));
如果(咖喱
编辑:
main.iter是一个递增1的整数什么是main.iter?它是一个
int
,double
,Random
…?它是一个整数,递增一。你能重新排列代码吗?方法中不能有访问(私有、公共等)修饰符。不清楚Main
是在方法内部还是其他地方。因此Main.iter本质上是时间变量?是的,它由Main()函数控制。