canvas绘制飘动的云朵

/*CSS代码片段*/

html,body{

background:#049ec4;

background-repeat:repeat-y;

margin:0;

height: 100%;

overflow:hidden;

font-family:'microsoft yahei',Arial,sans-serif;

}

/*Javascript代码片段*/

//创建画布并开始动画

function showCloud(){

//创建画布设置画布属性

var canvas = document.createElement("canvas");

canvas.width = document.body.clientWidth;

canvas.height = document.body.clientHeight;

canvas.style.position = "absolute";

canvas.style.zIndex = 0;

var ctx = canvas.getContext("2d");

//向body中添加画布

document.body.appendChild(canvas);

//设置一个初始X轴位置

var i = 0;

//循环更新画布

window.setInterval(function() {

//清空画布

ctx.clearRect(0, 0, canvas.width, canvas.height);

//绘制一朵云

drawCloud(ctx, i, canvas.height * 0.5, canvas.width * 0.25);

//云朵向右随机移动

i += Math.random();

},80)

}

/*渲染单个云朵

context: canvas.getContext("2d")对象

cx: 云朵X轴位置

cy: 云朵Y轴位置

cw: 云朵宽度

*/

function drawCloud(context, cx, cy, cw) {

//云朵移动范围即画布宽度

var maxWidth = context.canvas.width;

//如果超过边界从头开始绘制

cx = cx % maxWidth;

//云朵高度为宽度的60%

var ch = cw * 0.6;

//开始绘制云朵

context.beginPath();

context.fillStyle = "white";

//创建渐变

var grd = context.createLinearGradient(0, 0, 0, cy);

grd.addColorStop(0, 'rgba(255,255,255,0.8)');

grd.addColorStop(1, 'rgba(255,255,255,0.5)');

context.fillStyle = grd;

context.fill();

//在不同位置创建5个圆拼接成云朵现状

context.arc(cx, cy, cw * 0.19, 0, 360, false);

context.arc(cx + cw * 0.08, cy - ch * 0.3, cw * 0.11, 0, 360, false);

context.arc(cx + cw * 0.3, cy - ch * 0.25, cw * 0.25, 0, 360, false);

context.arc(cx + cw * 0.6, cy, cw * 0.21, 0, 360, false);

context.arc(cx + cw * 0.3, cy - ch * 0.1, cw * 0.28, 0, 360, false);

context.closePath();

context.fill();

}

.

html5 云朵飘动效果,canvas作图飘动的云朵相关推荐

  1. css3蒲公英飘动效果_CSS3 实现飘动的云朵动画

    运行效果 html CSS3 Cloud Animations By Montana Flynn css html, body { margin: 0; height: 100% } .sky { h ...

  2. html5 图片粒子效果,Canvas + JavaScript 制作图片粒子效果

    首先看一下源图和转换成粒子效果的对比图: 左侧图片为源图,右侧图片为粒子效果图.该效果是在Canvas画布上制作的.将图片制作成粒子效果相对而言是比较简单的.重点了解两个知识点即可 1:图片是通过im ...

  3. html飘羽毛效果,HTML5实现的柳叶飘动效果

    HTML5实现的柳叶飘动效果_网页代码站(www.webdm.cn) .qmg_leaf_div{width:500px;height:200px;overflow:hidden;} .qmg_lea ...

  4. 画正圆角矩形 - HTML5 Canvas 作图

    function DrawRoundRect(Canvas,P1,P2,Radius) 功能:画正圆角矩形 参数:P1:矩形左上角坐标:P2:矩形右下角坐标: Radius:圆角大小 源代码: fun ...

  5. 画闭合的多边形 - HTML5 Canvas 作图

    10.function DrawPolygon(Canvas,P) 功能:画闭合的多边形 参数:P是一个包含各个顶点坐标的数组 实例: <html> <script type=&qu ...

  6. 画圆角 - HTML5 Canvas 作图

    2.function DrawAOBArc(Canvas,A,O,B,Radius) 功能:画圆角 参数:Radius:圆角的大小:A,B:边上两点: 源代码: function DrawAOBArc ...

  7. 画椭圆 - HTML5 Canvas 作图

    8.function DrawEllipse(Canvas,O,OA,OB) 功能:画椭圆 参数:O:椭圆中心的坐标: OA,OB:长轴.短轴的长度 源代码: function DrawEllipse ...

  8. html5字体动画效果,7款超华丽的HTML5 Canvas文字动画特效

    原标题:7款超华丽的HTML5 Canvas文字动画特效 文字是网页中最为常见的元素之一,当然我们使用最多的就是调整文字的颜色.大小等基本属性.有时候我们在一些活动页面上需要展示特别样式的文字效果,这 ...

  9. html制作小车,HTML5 实现小车动画效果(Canvas/CSS3/JQuery)

    当前位置:编程学习 > html/css >> HTML5 实现小车动画效果(Canvas/CSS3/JQuery) HTML5正在变得越来越流行.在这个移动设备日益增长的时代,对来 ...

最新文章

  1. Oracle面试问题汇总
  2. NetDevOps — OpenConf 协议
  3. oracle强大的包,ORACLE 程序包
  4. 剑指offer:55-58记录
  5. 7-60 二分查找法之过程 (10 分)
  6. 机器学习入门一 ------- 什么是机器学习,机器学习的在实际中的用处
  7. 缩进一个字符_韩语毕业论文排版之 学会悬挂缩进,不再天天敲空格!
  8. 如何解决jsp中文乱码的问题
  9. 烽火HG680-R-MSO9280-河南电信_湖北联通免费刷机固件及说明
  10. python 概率分布_Python中的联合概率分布
  11. 滴滴裁员并不代表互联网进入寒冬,只是精细化管理时代到来了
  12. Win10版本那么多怎么区别(2)
  13. java解密_JAVA加解密
  14. 基于JavaWeb的文明城市宣传系统
  15. 有没有什么简单好用的录音软件?
  16. 感恩节(11.28)
  17. css元素的水平与垂直布局
  18. 探索嵌入式应用框架(EAF)
  19. 心电 基线漂移的处理研究论文
  20. 《王道计算机组成原理》学习笔记和总目录导航

热门文章

  1. 从整体上理解进程创建、可执行文件的加载和进程执行进程切换,重点理解分析fork、execve和进程切换...
  2. MMorpg角色进入主城之角色控制
  3. 股票市场周期波动分析的MATLAB实现(1)
  4. 要是我有这个女孩才华万分之一,那就不用去搬砖了
  5. 数据库字段设置默认值
  6. 计算机与化学关系论文,计算机化学类论文参考文献 计算机化学专著类参考文献哪里找...
  7. exit code: 127是什么
  8. Isla Obscura 深海生物系列 NFT 上架市场平台
  9. 内网渗透——搭建域控制器
  10. 南航计算机学院王立松教授,张道强 - 南京航空航天大学 - 计算机科学与技术学院/人工智能学院...