html跳动的小球,canvas绘制跳动的小球
*{
margin:0;
padding:0;
}
canvas1{
box-shadow: 0px 0px 10px red;
position: absolute;
left:50px;
top: 50px;
}
你的浏览器有待升级
//1.获取元素
var canvas = document.getElementById("canvas1");
//2.绘制环境
var context = canvas.getContext("2d");
function round(x,y,r,color,speedx,speedy) {
this.x = x;
this.y = y;
this.r = r;
this.color = color;
this.speedx = speedx;
this.speedy = speedy;
//绘制
this.draw = function () {
context.beginPath();
context.fillStyle = this.color;
context.arc(this.x,this.y,this.r,0,Math.PI*2,true);
context.fill();
}
//动画
this.move = function () {
if(this.x>canvas.width-2*this.rthis.x-this.r<0){
this.speedx *= -1;//条件范围u内运动反弹
}
if(this.y>canvas.height-2*this.rthis.y-this.r<0){
this.speedy *= -1;
}
this.x += this.speedx;
this.y += this.speedy;
}
}
//许多球的绘制
var arr = [];
for(var i=0;i<333;i++){
var x = rand(30,470);
var y = rand(30,470);
var r = rand(7,22);
var speedx = rand(1,7);
var speedy = rand(2,8);
var color="rgb("+rand(0,255)+","+rand(0,255)+","+rand(0,255)+")";
var rounds = new round(x,y,r,color,speedx,speedy);
arr.push(rounds);
}
//得到了10个不同样式的小球,并将其存放在数组里
function ani() {
context.clearRect(0,0,canvas.width,canvas.height);
//将数组里的小球分别进行绘制在画布中
for(var i=0;i
arr[i].draw();
arr[i].move();
}
window.requestAnimationFrame(ani);//定时器也可以。在这里确保运动更流畅
}
ani();
//随机函数
function rand(min,max) {
return parseInt(Math.random()*(max-min)+min);
}
html跳动的小球,canvas绘制跳动的小球相关推荐
- canvas绘制七彩随机小球!
canvas绘制七彩随机小球 1.题目 拿到一个案例,需要在画布上实现不同大小颜色位置的七彩小球,并且要运动起来! 2.思路 (1).第一步需要在页面上创建画布元素,创建一个数组用来存放随机小球的个数 ...
- matlab跳动的心脏,Matlab绘制跳动的心
相信不少程序猿在情人节,被女票要求用程序语言编写表白程序.我参考网上的资料,用matlab编写了心跳的动画. 下图是网上流传的心形数学表达式: 我觉得最后一个表达式跟传统的心形是最像的,这个表达式是用 ...
- CSS3绘制跳动的橙子动画js特效
下载地址 CSS3绘制跳动的橙子动画特效,两个跳动的橙子和切了一半滴着橙汗的橙子. dd:
- Canvas 绘制背景小球、与鼠标交互的小球
canvas入门,跟随掘金小册如何使用 Canvas 制作出炫酷的网页背景特效学习,完成一个简单的 canvas demo 下面是代码,操作解释都有注释: <!DOCTYPE html> ...
- 用matlab绘制跳动的心
用matlab绘制跳动的心(自学留存) https://blog.csdn.net/JasonTube/article/details/108206616?utm_medium=distribute. ...
- 纯JS实现小球在页面跳动/弹弹弹(有注释)
小球在页面跳动 实现方法用了transform:translate(x,y); 即在当前位置进行移动,只需动态改变x和y的值就可以实现移动 点我查看页面效果(点击小球开始跳动) JS //获取div节 ...
- 使用 HTML5 Canvas 绘制出惊艳的水滴效果
HTML5 在不久前正式成为推荐标准,标志着全新的 Web 时代已经来临.在众多 HTML5 特性中,Canvas 元素用于在网页上绘制图形,该元素标签强大之处在于可以直接在 HTML 上进行图形操作 ...
- html5绘制随机五角星_HTML5 canvas绘制五角星的方法
这篇文章主要介绍了关于HTML5 canvas绘制五角星的方法,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 是HTML5中新增的标签,用于绘制图形,这篇文章主要为大家详细介绍了HTM ...
- python制作简单动画_Python tkinter Canvas绘制动画
其实前面程序中的高亮显示已经是动画效果了.程序会用红色.黄色交替显示几何图形的边框,这样看上去就是动画效果了.实现其他动画效果也是这个原理,程序只要增加一个定时器,周期性地改变界面上图形项的颜色.大小 ...
最新文章
- 软件包管理 之 软件在线升级更新yum 图形工具介绍
- oracle11g导出dmp文件 少表,Oracle11g导出dmp并导入Oracle10g的操作记录
- bzoj#4423-[AMPPZ2013]Bytehattan【并查集】
- 选购工业交换机时,工业交换机的IP等级多少比较合适?
- [原创]C/C++语言中,如何在main.c或main.cpp中调用另一个.c文件
- c# out关键字 vb_c# 关键字:ref 和 out
- wordpress php 链接,简介WordPress中用于获取首页和站点链接的PHP函数_PHP
- nfine配置oracle,nfine去后门版和数据库说明
- mysql 最大长度_mysql VARCHAR的最大长度到底是多少
- 极客大学产品经理训练营:数据分析与用户数据 第17课总结
- Apple Watch简述
- WIN10如何进入BIOS界面
- android adb pull 文件夹,android – 我如何adb拉SD文件夹中的所有文件
- 感性负载对电源的影响有多大?
- shell基础---exit用法
- JavaScript用Math.asin()求反正弦值
- java-大数据-精品课程目录(超级全)
- python日历下拉框_c#教程之C#日历样式的下拉式计算器实例讲解
- 2021-2027全球及中国401(k)软件行业研究及十四五规划分析报告
- 计算机操作员中级上机,计算机操作员中级上机(范文).doc
热门文章
- Oracle 19.6 的有趣BUG:可能引发 CLOB 存储数据的丢失
- 深入理解MySQL8.0直方图
- 升级更新:Oracle关于DB Link在2019年升级的10g版本兼容性
- 一篇文章带你读懂 MySQL 和 InnoDB
- 【华为云技术分享】使用CloudIDE快速体验基于华为云ModelArts SDK的AI开发
- 分布式缓存Redis应用场景解析
- DevOps on DevCloud|代码检查服务如何降低“Billion Dollar Mistake” NPE风险
- ServiceComb java-chassis和CSE java-chassis的区别
- mysql empty table_【MySQL】 empty table and delete table.
- 贵阳龙里计算机培训,贵州省龙里中等职业学校机械加工技术专业