canvas绘制星空
2017-01-18 10:33
218 查看
效果图
html结构
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>canvas15</title>
<link rel="stylesheet" href="">
</head>
<body>
<canvas id="canvas" style ="border:1px solid #aaa;diplay:block;margin:50px auto;">
当前浏览器不支持canvas,请更换浏览器后再试
</canvas>
</body>
</html>
js脚本
<script> window.onload = function(){ var canvas = document.getElementById("canvas");
canvas.width = 800; canvas.height = 800;
var context = canvas.getContext("2d"); // context.lineJoin = "bevel"; // context.lineJoin = "round"; // context.lineJoin = "miter";
context.fillStyle = "black"; context.fillRect(0,0,canvas.width,canvas.height); for(var i = 0;i<200;i++){ var r = Math.random() * 10 + 10; var x = Math.random() * canvas.width; var y = Math.random() * canvas.height; var a = Math.random() * 360;
drawStar(context,r/2.0,r,x,y,a,10,"#fb3","#fb3"); }
}
function drawStar(context,r,R,x,y,rot,lineWidth,strokeStyle,fillStyle){ context.beginPath();
for(var i = 0;i<5;i++){ context.lineTo(Math.cos((18+i*72 - rot)/180 * Math.PI) * R + x,-Math.sin((18+i*72 - rot)/180*Math.PI)*R + y); context.lineTo(Math.cos((54+i*72 - rot)/180 * Math.PI) * r + x,-Math.sin((54+i*72 - rot)/180*Math.PI)*r + y); }
context.closePath();
context.fillStyle = fillStyle; context.strokeStyle = strokeStyle; context.lineWidth = lineWidth; context.lineJoin = "miter"; context.fill();
context.stroke(); } </script>
html结构
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>canvas15</title>
<link rel="stylesheet" href="">
</head>
<body>
<canvas id="canvas" style ="border:1px solid #aaa;diplay:block;margin:50px auto;">
当前浏览器不支持canvas,请更换浏览器后再试
</canvas>
</body>
</html>
js脚本
<script> window.onload = function(){ var canvas = document.getElementById("canvas");
canvas.width = 800; canvas.height = 800;
var context = canvas.getContext("2d"); // context.lineJoin = "bevel"; // context.lineJoin = "round"; // context.lineJoin = "miter";
context.fillStyle = "black"; context.fillRect(0,0,canvas.width,canvas.height); for(var i = 0;i<200;i++){ var r = Math.random() * 10 + 10; var x = Math.random() * canvas.width; var y = Math.random() * canvas.height; var a = Math.random() * 360;
drawStar(context,r/2.0,r,x,y,a,10,"#fb3","#fb3"); }
}
function drawStar(context,r,R,x,y,rot,lineWidth,strokeStyle,fillStyle){ context.beginPath();
for(var i = 0;i<5;i++){ context.lineTo(Math.cos((18+i*72 - rot)/180 * Math.PI) * R + x,-Math.sin((18+i*72 - rot)/180*Math.PI)*R + y); context.lineTo(Math.cos((54+i*72 - rot)/180 * Math.PI) * r + x,-Math.sin((54+i*72 - rot)/180*Math.PI)*r + y); }
context.closePath();
context.fillStyle = fillStyle; context.strokeStyle = strokeStyle; context.lineWidth = lineWidth; context.lineJoin = "miter"; context.fill();
context.stroke(); } </script>
相关文章推荐
- canvas星空的2d绘制示例
- requireJs的使用,以canvas绘制星空为例
- 面向对象+模块化设计绘制canvas星空动画
- canvas星空的2d绘制示例
- Canvas小demo(直线和曲线绘制出一个星空,月亮,绿地)
- HTML5 Canvas ( 绘制一轮弯月, 星空中的弯月 )
- requireJs的使用,以canvas绘制星空为例
- [HTML5].Canvas.easel.js.arc.arcTo 绘制弧线
- HTML5 canvas绘制雪花飘落动画(需求分析、知识点、程序编写分布详解)
- Canvas 在高清屏下绘制图片变模糊的解决方法
- 微信小程序利用canvas 绘制幸运大转盘功能
- 千呼万唤 HTML 5 (8) - 画布(canvas)之绘制图形
- Canvas容器绘制直线
- 在canvas上绘制视频图像
- 关于canvas在retina屏下绘制文字或图像模糊的解决方案
- JavaScript绘制图形Canvas
- 图形绘制: Canvas、SurfaceView、Paint、Surface、SurfaceHolder、Bitmap
- HTML5 Canvas 绘制五星红旗
- canvas绘制吃豆鱼
- 利用canvas.save()、canvas.restore()、canvas.translate()、canvas.rotate()绘制一个时钟表盘