如何随机创建滴数?

时间:2020-09-03 00:15:01

标签: javascript arrays

当雨滴到达画布的一侧时,我通过改变其位置来连续下雨。

我可以通过向xPosition和yPosition变量添加更多随机位置来添加更多滴。

但是,如何使它自动发生?

这是我的代码:

var xPositions = [random(0, 400), random(0, 400)];
var yPositions = [random(0, 400), random(0, 400)];

draw = function() {
    
    background(204, 247, 255);

    noStroke();
    fill(0, 200, 255);

    for (var i = 0; i < xPositions.length; i++) {
        ellipse(xPositions[i], yPositions[i], 10, 10);
        yPositions[i] +=3;
    
    if(yPositions[i] > 400) {
    yPositions[i] = 0;

    xPositions = [random(0, 400), random(0, 400)];
    yPositions = [0, 0];
    
    }
    }
};

1 个答案:

答案 0 :(得分:1)

您可以编写函数addDrop以在随机位置添加雨滴,然后调用该函数随机次数以生成随机数的雨滴:

random = function(min, max) {
  return Math.floor((max - min) * Math.random() + min);
}

var xPositions = [];
var yPositions = [];

addDrop = function() {
  xPositions.push(random(0, 400));
  yPositions.push(random(0, 400));
}

for (var i = 0; i < random(5, 15); i++) {
  addDrop();
}

for (var i = 0; i < xPositions.length; i++) {
  console.log([xPositions[i], yPositions[i]]);
}