<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>canvas雪花</title>
</head>
<body>
<canvas id="canvas"></canvas> <script>
var c = document.getElementById("canvas").getContext("2d");
c.width = window.innerWidth;
c.height = window.innerHeight;
var deg = Math.PI/180;
function snowflake(c,n,x,y,len) {
c.save();
c.translate(x,y);
c.moveTo(0,0);
leg(n);
c.rotate(-120*deg);
leg(n);
c.rotate(-120*deg);
leg(n);
c.closePath();
c.restore(); function leg(n) {
c.save();
if(n == 0){
c.lineTo(len,0);
}else{
c.scale(1/3,1/3);
leg(n-1);
c.rotate(60*deg);
leg(n-1);
c.rotate(-120*deg);
leg(n-1);
c.rotate(60*deg);
leg(n-1);
}
c.restore();
c.translate(len,0); }
}
snowflake(c,6,115,115,125);
c.stroke();
</script>
</body>
</html>

最新文章

  1. PHP文件和目录操作-----复制、移动、重命名、删除文件
  2. Java Servlet(六):HttpServlet实现原理(jdk7+tomcat7+eclipse)
  3. contextloaderlistener
  4. 【细说Java】path和classpath的作用
  5. Leetcode 290 Word Pattern STL
  6. swift入门篇-函数
  7. lucene 检索流程整理笔记
  8. 使用spring + cxf +tomcat构建webservice
  9. 关于HttpsURLConnection的连接问题
  10. python计算机视觉1:基本操作与直方图
  11. bounds 和 frame
  12. js中innerHTML与innerText的用法与区别
  13. Objective C HMAC-MD5
  14. Web 前端代码规范
  15. 为Docker配置阿里加速器,系统为Debian8
  16. Windows Internals 笔记——CreateProcess
  17. pyinstaller 打包生成exe之后运行提示‘no module name &#39;xxx&#39;’错误
  18. BZOJ2142 礼物 扩展lucas 快速幂 数论
  19. 案例:通过shell脚本实现mysql数据备份与清理
  20. Linux 字符设备驱动及一些简单的Linux知识

热门文章

  1. 《Google SRE》读后感
  2. selenium_Alert
  3. React 和 Angular 各有什么优缺点,各自又适合什么开发场景?
  4. python基础(一)------Python基础语法与介绍
  5. 【原创】使用workstation安装Xenserver 6.5+cloudstack 4.10----本地存储模式
  6. Python之matplotlib学习(二)
  7. Python字符编码详解(转)
  8. struts2的简单执行过程
  9. 基于Spark和SparkSQL的NetFlow流量的初步分析——scala语言
  10. Web攻防之暴力破解(何足道版)