canvas绘制简易动画
在canvas画布中制作动画相对来说很简单,实际上就是不断变化的坐标、擦除、重绘的过程
1、使用setInterval方法设置动画的间隔时间。
setInterval(code,millisec) setInterval方法html中固有方法,这个方法接受两个参数,第一个函数表示执行动画的函数,第二个参数为间隔时间,单位是(毫秒)。
2、用来绘图的函数
1)通过不断变换X和Y的坐标实现动画的效果。
2)在该函数中先用clearRect方法将画布整体或者局部擦除。
擦除图像clearRect方法:
context.clearRect(x,y,width,height);
x是指我们起点的横坐标,y是指我们起点的纵坐标,width是指擦子的长度,height是指擦子的高度。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>canvas绘制动画</title>
<script src="js/canvas.js" type="text/javascript" charset="utf-8"></script>
</head>
<body onload="draw('canvas')">
<canvas id="canvas" width="200" height="200"></canvas>
</body>
</html>
var context;
var i,j;
var width,height; function draw(id){
var canvas = document.getElementById(id);
context = canvas.getContext('2d');
width = canvas.width;
height = canvas.height;
context.fillStyle = 'green';
context.fillRect(0,0,width,height);
setInterval(painting,100);
i = 0;
j = 0;
}
function painting(){
//例子一:
//context.fillStyle = 'red';
//context.fillRect(i,i,10,10);
//context.fillRect(i,200-j,10,10);
//i++;
//j++; //例子二:
context.fillStyle = 'white';
context.clearRect(i,20,1,10);
i++; }
canvas绘制简易动画的更多相关文章
- canvas绘制简易时钟
时钟绘制的非常简易,但该有的都有了. 效果图如下, <!DOCTYPE html> <html> <head lang="en"> <me ...
- JavaScript动画基础:canvas绘制简单动画
动画是将静止的画面变为动态的艺术.实现由静止到动态,主要是靠人眼的视觉残留效应.视觉残留也叫视觉暂留现象,物体在快速运动时, 当人眼所看到的影像消失后,人眼仍能继续保留其影像0.1~0.4秒左右的图像 ...
- 利用canvas绘制序列帧动画
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 测试canvas绘制旋转文字的性能
canvas 绘制各种动画效果时,我们经常会使用画布旋转,使绘制上去的元素有旋转的效果. 最近在项目中碰到了很严重的性能问题,经常排查发现是因为绘制批量文字时使用了画布旋转,且每行文字的旋转角度是不一 ...
- canvas绘制圆角头像
如果你想绘制的网页包含一个圆弧形的头像的canvas图片,但是头像本身是正方形的,需要的方法如下:首先, 拿到头像在画布上的坐标和宽高:(具体怎么获取不在此做具体介绍) 使用canvas绘制圆弧动画 ...
- canvas+js绘制序列帧动画+面向对象
效果: 素材: 源码:(一般的绘制方式) <!DOCTYPE html> <html lang="en"> <head> <meta ch ...
- 第165天:canvas绘制圆环旋转动画
canvas绘制圆环旋转动画——面向对象版 1.HTML 注意引入Konva.js库 <!DOCTYPE html> <html lang="en"> &l ...
- 用canvas绘制一个简易时钟
在见识了html5中canvas的强大,笔者准备制作一个简易时钟. 下面就是成果啦,制作之前我们先分析一下,绘制一个时钟需要做哪些准备. 一 . 1.首先这个时钟分为表盘,指针(时针,分针,秒针)和数 ...
- h5学习-canvas绘制矩形、圆形、文字、动画
绘制矩形<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...
随机推荐
- java查看本机hostName可代表的ip列表【转】
java查看本机hostName可代表的ip列表 import java.net.InetAddress; public class ent { public static void main(Str ...
- Mabatis三剑客分别是:mybatis-generator、mybatis-plugin、mybatis-pagehelper
本文用的是maven,idea15 Mabatis三剑客分别是:mybatis-generator.mybatis-plugin.mybatis-pagehelper 一.mybatis-genera ...
- ipython 编辑器 jupyter notebook如何将 ipynb 转成 py 并在 jupyter notebook 中继续引用
首先将 要被做成 module 的 ipython 代码 download as py 然后将 down 下来的 py 文件上传至 work 目录(也就是编写导入模块的py文件目录) 这部分 的 wo ...
- Java实现DOS中的Copy命令
import java.io.*; import java.util.Scanner; public class fileCopy { public static void main(String [ ...
- VS Sln图标空白修复办法
环境:Win10,VS2017,曾经安装并卸载过VS2015之前安装了两个版本的VisualStudio,卸载一个后,就出现了图标空白问题,重新设置默认打开程序也没有作用,经摸索解决办法如下.(1)在 ...
- Tomcat环境变量,端口号,编码格式,项目路径,默认页的配置
Tomcat的配置 1.配置环境变量 新建名为:CATALINA_HOME的系统变量,值为我们安装tomcat的目录 2端口号及编码的配置: 找到tomcat安装目录下的sonf下的server文件, ...
- Ansi与Unicode编码
视频教程:Ansi与Unicode编码 大家在编程时经常遇到的数据类型: ● Ansi: char 代表一个字符 (CHAR) char * 代表一个字符串指针 (PCHAR PST ...
- python 线程 event
全局定义了一个“Flag”,如果“Flag”值为 False,那么当程序执行 event.wait 方法时就会阻塞,如果“Flag”值为True,那么执行event.wait 方法时便不再阻塞. cl ...
- Toy Train(贪心)
题目链接:http://codeforces.com/contest/1130/problem/D1 题目大意:给你n个点,然后m条运输任务,然后问你从每个点作为起点是,完成这些运输任务的最小花费?每 ...
- mysql 原理 ~ innodb恢复机制
举例说明 机制 数据页A的lsn为100,数据页B的lsn为200,checkpoint lsn为150,系统lsn为300,表示当前系统已经更新到300,小于150的数据页已经被刷到磁盘上,因此数据 ...