我正在研究一种新的编码语言,该语言使用Java语言编写。我们从简单开始:创建一个矩形,使其在屏幕上水平移动。但是,我需要找到一种方法,使其持续时间越长越好。

到目前为止,我唯一能弄清楚和发现的就是我可以使用现有值并将其乘以一个很小的因数,该因数略高于一个(“ IF”语句)。但是,有没有其他更简单的方法可以做到这一点?

//variabelen X en Y

var posX;
var posY;


//Canvas
function setup() {
    createCanvas(400, 400);
    posX = 0;
    posY = 50;

}

//rode vierkant

function draw() {
    background(255);
    fill(255, 0, 0);
    rect(posX, posY, 50, 50);
    posX = posX + 1;

    if (posX >= 1) {

        posX = posX * 1.05;
    }

}


如上所述,我希望红色矩形以一定速度(在本例中为+1)开始,然后逐渐加速。

最佳答案

您将需要声明另一个变量来跟踪速度。
然后,在绘制循环的每次迭代中,将该速度增加一定量:



var posX;
var posY;
var vel;


//Canvas
function setup() {
    createCanvas(400, 400);
    posX = 0;
    posY = 50;
    vel = 1;
}

//rode vierkant

function draw() {
    background(255);
    fill(255, 0, 0);
    rect(posX, posY, 50, 50);
    posX += vel;
    vel *= 1.05;
}

关于javascript - 如何加速已经移动的物体?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54064098/

10-12 06:38