JavaScript结合Canvas如何绘画画运动小球
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章给大家分享的是有关JavaScript结合Canvas如何绘画画运动小球的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.实现思路首先为了达到我们想要的效果,可以先
千家信息网最后更新 2026年11月01日JavaScript结合Canvas如何绘画画运动小球
这篇文章给大家分享的是有关JavaScript结合Canvas如何绘画画运动小球的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
1.实现思路
首先为了达到我们想要的效果,可以先创建一个构造函数。
给构造函数添加对应的属性和方法。
实例化出多个对象,并且保存在数组中。
遍历每个对象,实现画圆。
间隔修改每个球的x,y值。
先准备画布确定对应的宽高:
因为是随机运动,所以要创建一个获取随机数的方法:
function getRandomNum(minNum, maxNum) { switch (arguments.length) { case 1: return Math.round(Math.random() * minNum + minNum); break; case 2: return Math.round( Math.random() * (maxNum - minNum) + minNum); break; case 0: return 0; break; }}// 创建一个Ball的构造函数 function Ball(maxWidth, maxHeight, ctx) { this.ctx = ctx; this.maxWidth = maxWidth; this.maxHeight = maxHeight; // 随机半径 this.r = getRandomNum(5, 15); // 随机x,y坐标 this.x = getRandomNum(this.r, this.maxWidth - this.r); this.y = getRandomNum(this.r, this.maxHeight - this.r); // 平移速度,正负区间是为了移动方向多样 this.speedX = getRandomNum(-2, 2); this.speedY = getRandomNum(-2, 2); // 颜色随机 this.color = `rgba(${getRandomNum(0, 255)}, ${getRandomNum(0, 255)}, ${getRandomNum(0, 255)},${Math.random()})`; } Ball.prototype = { draw: function () { ctx.beginPath(); ctx.fillStyle = this.color; ctx.arc(this.x, this.y, this.r, 0, Math.PI * 2); ctx.fill(); ctx.closePath(); }, move: function () { // 判断边界值,让圆球始终保证在画面内 if (this.x > this.maxWidth - this.r || this.x < this.r) { this.speedX = -this.speedX; } if (this.y > this.maxHeight - this.r || this.y < this.r) { this.speedY = -this.speedY; } this.x += this.speedX; this.y += this.speedY; } }; // 创建100个Ball实例 let balls = []; for (let i = 0; i < 100; i++) { let newBall = new Ball(maxWidth, maxHeight, ctx); newBall.draw(); balls.push(newBall); }2.静态效果
现在我们画出了不同半径和颜色的静止圆球:

调用move方法,间隔修改每个球的x,y值。
setInterval(() => { // 每次画之前都要清除画布 ctx.clearRect(0, 0, maxWidth, maxHeight); ctx.fillStyle = '#000'; ctx.fillRect(0, 0, maxWidth, maxHeight); for (let j = 0; j < 100; j++) { balls[j].draw(ctx); balls[j].move(); }}, 100);效果展示:
感谢各位的阅读!关于"JavaScript结合Canvas如何绘画画运动小球"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
运动
函数
效果
方法
小球
绘画
内容
半径
圆球
实例
对象
更多
画布
篇文章
颜色
不同
不错
实用
区间
坐标
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
咖啡
互联网科技深圳
互联网金融 科技金融
奇士达互联网科技
欧洲十大科技互联网公司
互联网校园科技培训
佳云科技和互联网广告
厦门比较好的科技互联网公司
湖北码尼互联网科技有限公司电话
成都互联网科技公司工作好不好
互联网科技快讯热点
有人说阿里系是互联网科技企业
郑州欣桑互联网科技有限公司
互联网科技接地气
互联网界的黑科技
互联网金融运营模式中的金融科技
福仕德教育科技互联网
互联网科技品牌
前海云享互联网科技
科技发展第三阶段互联网时代
互联网科技公司简介
银优互联网科技有限公司
长亮科技互联网金融
撒么互联网科技公司
上海亿帐通互联网科技
互联网科技公司做什么
互联网安防科技感
易租星互联网科技有限公司
恒生科技指数 中概互联网
互联网科技自媒体灵感