canvas制作 加载圆
来源:互联网 发布:煲耳机方法知乎 编辑:程序博客网 时间:2024/05/23 12:25
主要原理 -- 利用了canvas和定时器的结合~
//获取绘制环境
varcanvas = document.getElementById("myCanvas");
var canvasObj = canvas.getContext("2d");
vardeg = 90;//存储开始的角度
//绘制图形
function draw () {
canvasObj.clearRect(0,0,canvas.width,canvas.height);
deg++;//每次添加角度
//绘制最底层的圆
canvasObj.beginPath();
canvasObj.arc(300,300,200,0,Math.PI* 2,false);
//填充
canvasObj.fillStyle= "#ddd";
canvasObj.fill();
//中间的圆
canvasObj.beginPath();
canvasObj.arc(300,300,150,0,Math.PI* 2,false);
canvasObj.shadowBlur = 10;
canvasObj.shadowColor = "black";
//填充
canvasObj.fillStyle= "#eee";
canvasObj.fill();
//画彩色的圆弧
canvasObj.beginPath();
canvasObj.arc(300,300,160,-Math.PI/ 180 * 90,(-Math.PI/ 180 * deg),true);
canvasObj.lineWidth = 20;
//添加线性渐变
varlinearG = canvasObj.createLinearGradient(300,120,300,470);
//添加渐变的颜色
linearG.addColorStop(0,"deepskyblue");
linearG.addColorStop(1,"purple");
//边线
canvasObj.strokeStyle= linearG;
canvasObj.stroke();
//画百分比
canvasObj.textAlign= "center";
canvasObj.fillStyle = "greenyellow";
canvasObj.font = "80px serif";
var str = Math.floor((deg - 90)/ 360 * 100)+ "%";
canvasObj.fillText(str,300,320);
if (deg== 450) {
clearInterval(timer);
}
}
var timer = setInterval(draw,20);
- canvas制作 加载圆
- Canvas制作动态进度加载水球
- H5 canvas制作圆形动态加载进度实例
- html5使用canvas画布制作圆形加载动画
- html5 canvas制作箭头
- canvas制作时钟
- canvas 制作时钟效果
- canvas制作钟表
- canvas制作倒计时
- 简单canvas制作饼状图
- canvas制作五子棋游戏
- 游戏制作之canvas
- H5 canvas制作画图
- Canvas制作时钟
- Canvas制作验证码
- 使用Canvas和Paint制作圆角矩形头像
- Canvas加载图片
- Html5用Canvas制作绘图板
- OpenCV imread(), imshow()
- canvas经典太极
- UNC2Local
- yii2 中 controller 向layout 传值
- ImageView.ScaleType设置图解
- canvas制作 加载圆
- AsyncTask--源码心得
- 第一篇博文,感谢主
- Appium自动化测试之Appium的安装与配置
- Sort Colors
- HBase中rowkey热点问题:
- 序列化与发序列化
- logstash nginx 报ArgumentError: comparison of String with 5 failed
- Jquery---层次选择器