canvas扩散圆环
最近看了很多牛的动画,想想自己的canvas的确很菜。
公式在那里,但是不是太会套。找demo发现都是很难的
于是找了个简单的效果

圆环从中间扩散的效果
关键是 globalCompositeOperation合成操作,只留下重叠的部分

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>圆形扩散</title>
<style>
body {
overflow: hidden;
background: #000;
}
body,
html {
height: 100%;
width: 100%;
margin: 0;
padding: 0;
}
</style>
</head>
<body>
<canvas id="canvas"></canvas>
</body>
<script type="text/javascript">
var oAnim=document.getElementById('canvas');
var context = oAnim.getContext("2d");
var radius=0 function drawCircle(){
context.beginPath();
render(radius);
context.arc(50,50,radius,0,Math.PI * 2); context.closePath(); context.lineWidth=2;
context.strokeStyle='rgba(250,250,50,1)'; context.stroke();
radius +=0.5;//每帧半径增加0.5 if(radius > 20){
radius=0;
}
} function render(x) {
//默认值为source-over,覆盖原图上面,效果像z-index:999
var prev = context.globalCompositeOperation; //只显示canvas上原图像的重叠部分
context.globalCompositeOperation = 'destination-in'; //设置主canvas的绘制透明度,圆圈中间的浅黄色部分
context.globalAlpha = 0.95;
//这一步目的是将canvas上的图像变的透明
context.fillRect(0,0,40*x,40*x); //在原图像上重叠新图像
context.globalCompositeOperation = prev;
//下面代用的drawcricle方法,圆圈覆盖在正方形上 }; //在主canvas上画新圆
setInterval(function(){
drawCircle();
},20); </script>
</html>
canvas扩散圆环的更多相关文章
- 第165天:canvas绘制圆环旋转动画
canvas绘制圆环旋转动画——面向对象版 1.HTML 注意引入Konva.js库 <!DOCTYPE html> <html lang="en"> &l ...
- CSS3进度条 和 HTML5 Canvas画圆环
看到一些高大上的进度条插件,然后想自己用CSS写.经过搜索资料之后,终于成功了.为了以后方便拿来用,或者复习.将代码贴出. HTML代码: 只需要两个div,外面的为一个有border的div id为 ...
- canvas画圆环
<!DOCTYPE html><html> <head> <title> </title> <meta http-equiv=&quo ...
- canvas画圆环%显示
我: JS代码: function circleProgress(id,value,average){ var canvas = document.getElementById(id); var ...
- canvas 实现圆环效果
var race = document.getElementById('race'); var cxt = race.getContext('2d'); var ang = 0; var speed ...
- canvas绘制圆环
- 浅谈一下关于使用css3来制作圆环进度条
最近PC端项目要做一个这样的页面出来,其他的都很简单,关键在于百分比的圆环效果.我最初打算是直接使用canvas来实现的,因为canvas实现一个圆是很简便的. 下面贴出canvas实现圆环的代码,有 ...
- canvas实现有递增动画的环形进度条
哈?标题不知道啥意思? 老规矩,直接看图! 效果如下: 高清大图! 码农多年,老眼昏花,动图看不清?!那就看静态截图!!! 不同分值效果如下: 看完了卖家秀,我们来看产品的制作过程吧 ...
- 自定义View绘制简单的圆环的实现
package com.loaderman.mywave; import android.content.Context; import android.graphics.Canvas; import ...
随机推荐
- Hibernate_day01
一.今天内容介绍 1 web内容回顾 (1)javaee三层结构 (2)mvc思想 2 hibernate概述 3 hibernate入门案例 4 hibernate配置文件 5 hibernate的 ...
- Java——Struts2 crud 简单实例(学习struts2和ssh) 用Myeclipse实现
1.new web project 2.给新建的web项目添加struts2支持 3.项目结构中有了struts.xml和struts2核心库 4.编码 4.1项目结构图 4.2源代码: (1)DbU ...
- c/s 给 服务器上传文件(c/s和b/s互传文件)
//c/s 代码 private void button1_Click(object sender, EventArgs e) { OpenFileDialog openFileDialog = ne ...
- 让 IE9 以下的浏览器支持 Media Queries
1. 如何让 IE9 以下的浏览器支持 css3 的media query 需要用到的 min-width/max-width 属性 css3 的媒体查询 IE 浏览器的支持程度是从 IE9开始支持, ...
- for XX in XX结构
这是一个循环!! in 后面可跟range,enumerate,序列等 for i in [(1,2),(2,3),("gege",5)]: print (i) 执行结果: (1, ...
- Bootstrap模态框(一个页面显示多个)的使用
在一个页面显示多个模态框时要讲每个模态框用div包裹起来,否咋会产生格式错误. <html> <head> <meta charset="utf-8" ...
- 使用xmanager图形化远程连接rhel6
使用xmanager图形化远程连接rhel6 xmanager中Xbrowser可以提供图形化桌面远程.和vnc比,可以类似于本地一样用户切换. 操作步骤: linux服务端: 1:查看/etc/in ...
- 【windows核心编程】系统消息与自定义钩子(Hook)使用
一.HOOk Hook是程序设计中最为灵活多变的技巧之一,在windows下,Hook有两种含义: 1.系统提供的消息Hook机制 2.自定义的Hook编程技巧 其中,由系统提供的消息钩子机制是由一系 ...
- Python爬虫-爬取糗事百科段子
闲来无事,学学python爬虫. 在正式学爬虫前,简单学习了下HTML和CSS,了解了网页的基本结构后,更加快速入门. 1.获取糗事百科url http://www.qiushibaike.com/h ...
- rabbitmq 源码安装
官网地址:rabbitmqhttp://www.rabbitmq.com/releases/rabbitmq-server/官网地址:erlanghttp://erlang.org/download/ ...