在p5.js中,我们可以使用createCanvas()函数来创建一个画布,使用ellipse()函数来绘制一个圆形,使用frameRate()函数来设置动画的帧速率,使用random()函数来生成随机数,使用widthheight变量来获取画布的宽度和高度。

下面是一个使用p5.js绘制一个20毫米的球,在界面上跳动的示例代码:

let x, y;  // 球的坐标
let xSpeed, ySpeed;  // 球的速度
const ballSize = 20;  // 球的大小

function setup() {
  createCanvas(400, 400);
  x = random(ballSize, width - ballSize);  // 随机生成球的初始x坐标
  y = height - ballSize;  // 球的初始y坐标
  xSpeed = random(-5, 5);  // 随机生成球的初始x速度
  ySpeed = -10;  // 设置球的初始y速度
  frameRate(60);  // 设置动画的帧速率为60帧/秒
}

function draw() {
  background(220);

  // 更新球的位置
  x += xSpeed;
  y += ySpeed;
  ySpeed += 0.5;  // 增加y速度的大小,使球有向下的加速度

  // 碰撞检测
  if (x - ballSize / 2 <= 0 || x + ballSize / 2 >= width) {
    xSpeed *= -1;  // 碰到左右边界时,反转x速度
  }
  if (y + ballSize / 2 >= height) {
    ySpeed *= -0.9;  // 碰到底部时,反转y速度并减小一部分以模拟能量损失
  }

  // 绘制球
  ellipse(x, y, ballSize, ballSize);
}

在上述代码中,我们使用random()函数来随机生成球的初始位置和速度,使用xSpeedySpeed来控制球的移动速度和方向。在draw()函数中,我们使用background()函数来绘制背景色,使用ellipse()函数来绘制球,通过更新球的位置和速度实现球的跳动效果。

用p5js绘制一个20毫米的球在界面跳动

原文地址: https://www.cveoy.top/t/topic/i4bl 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录