Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 以越来越高的速度在曲线的相同距离上移动_Java_Math - Fatal编程技术网

Java 以越来越高的速度在曲线的相同距离上移动

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

我有一个物体,我正试图让它以平滑的“弧形”移动。对象的x值实际上不会更改,但y值会更改。 y值从-108开始,需要达到-37.5。每次迭代我都希望它在更短的时间内移动相同的距离。问题是它需要减速并停在-37.5(这将是运动的一半)。当当前代码运行时,时间保持不变,距离增加。这在第一次迭代中确实有效

这就是我所拥有的:

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()函数控制。