• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >css3 > canvas之万花筒效果的简单实现(推荐)

canvas之万花筒效果的简单实现(推荐)

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-02

本文主要包含canvas动画效果,canvas效果,html5 canvas动画效果,canvas粒子效果,canvas 烟雾效果等相关知识,佚名 希望在学习及工作中可以帮助到您

canvas也有css3里transform的变换功能,transform的底层运算的方式是运用了线性代数里矩阵,而矩阵是在我们的生活实践中会经常被使用,它可以把复杂的空间问题呈现出来,它还有很多实践的地方,然后不懂它的人会觉得很难,如果要钻研,这方面知识是不能少的。

canvas里封装好的变换函数:scale()、rotate()、translate()、transform()、setTransform();而它们只要传数字进去即可,单位不用传,还有这里角度单位是弧度,这些是与css里的区别,transform()、setTransform();在与这个变换都有个记忆保存叠加的功能,而setTransform()帮

你消除这些功能了,换句话说,setTransform() 允许您缩放、旋转、移动并倾斜当前的环境。

至于使用方式到w3c里查手册。

接下来效果图:

代码:

</div>
  1. <!DOCTYPE html>  
  2. <html lang="en">  
  3. <head>  
  4.     <meta charset="UTF-8">  
  5.     <title>canvas</title>  
  6.     <style>  
  7.     body{   
  8.         background: #eee;   
  9.     }   
  10.     canvas{   
  11.         background: #fff;   
  12.     }   
  13.     </style>  
  14. </head>  
  15. <body>  
  16.     <canvas width="800" height="800"></canvas>  
  17.     <script>  
  18.     var oCas=document.getElementsByTagName("canvas")[0];   
  19.     var cas=oCas.getContext("2d");   
  20.     var arr=[];   
  21.   
  22.     /*绘制数据内容*/   
  23.     setInterval(function(){   
  24.         cas.clearRect(0,0,800,800);   
  25.         for(var i=0;i<arr.length;i++){   
  26.             cas.save();   
  27.             cas.beginPath();   
  28.             cas.translate(400,400);   
  29.             cas.rotate(arr[i].num*Math.PI/180);   
  30.             cas.scale(arr[i].num2,arr[i].num2);   
  31.             cas.fillStyle=arr[i].color;   
  32.             cas.rect(arr[i].num1,0,20,20);   
  33.             cas.fill();   
  34.             cas.restore();   
  35.             if(arr[i].num1<=0){   
  36.                 arr.splice(i,1);   
  37.             }else{   
  38.                 arr[i].num++;   
  39.                 arr[i].num2-=0.0015;   
  40.                 arr[i].num1-=0.4;   
  41.             }   

您可能想查找下面的文章:

  • canvas之万花筒效果的简单实现(推荐)

相关文章

  • 2017-06-02css3的transition效果和transfor效果示例介绍
  • 2017-06-02使用CSS3和Checkbox实现JQuery的一些效果
  • 2017-06-02使用CSS3设计地图上的雷达定位提示效果
  • 2017-06-02CSS3绘制不规则图形的一些方法示例
  • 2017-06-02纯CSS3制作的简洁蓝白风格的登录模板(非IE效果更好)
  • 2017-06-02CSS3过渡transition效果实例介绍
  • 2017-06-02css3设置box-pack和box-align让div里面的元素垂直居中
  • 2017-06-02CSS3实现头像旋转效果
  • 2017-06-02CSS3实现DIV圆角效果完整代码
  • 2017-06-02关于css兼容性问题及一些常见问题汇总

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • CSS3教程(4):网页边框和网页文字阴影
    • 使用CSS3编写灰阶滤镜来制作黑白照片效果的方法
    • css3打造一款漂亮的卡哇伊按钮
    • CSS3悬停效果案例应用
    • CSS伪类与CSS伪元素的区别及由来具体说明
    • 利用CSS3参考手册和CSS3代码生成工具加速来学习网页制
    • 使用css3匹配手机屏幕横竖状态
    • HTML5+CSS3网页加载进度条的实现,下载进度条的代码实例
    • CSS3五个技巧给你的网站带来出色的效果
    • css3加js做一个简单的3D行星运转效果实例代码

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有