Canvas中如何绘制弧形和圆形
2011-06-30 07:41
260 查看
在Canvas中绘制弧形和圆形的计算方法:
arc(x,y,radius,startAngle, endAngle,bAntiClockwise)
x,y:是arc的中心点
radius:是半径长度
startAngle:是以starAngle开始(弧度)
endAngle:是以endAngle结束(弧度)
bAntiClockwise:是否是逆时针,设置为true意味着弧形的绘制是逆时针方向的,设置为false意味着顺时针进行
特殊角度数和弧度数对应表
最终效果:
参考:http://bbs.html5china.com/thread-229-1-1.html
http://www.ibm.com/developerworks/cn/web/1012_linlin_html5canvas/index.html?ca=drs-
arc(x,y,radius,startAngle, endAngle,bAntiClockwise)
x,y:是arc的中心点
radius:是半径长度
startAngle:是以starAngle开始(弧度)
endAngle:是以endAngle结束(弧度)
bAntiClockwise:是否是逆时针,设置为true意味着弧形的绘制是逆时针方向的,设置为false意味着顺时针进行
特殊角度数和弧度数对应表
度 | 0° | 30° | 45° | 60° | 90° | 120° | 135° | 150° | 180° | 270° | 360° |
弧度 | 0 | π/6 | π/4 | π/3 | π/2 | 2π/3 | 3π/4 | 5π/6 | π | 3π/2 | 2π |
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>绘制一个小脸</title> <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Cache-Control" content="no-cache" /> <meta http-equiv="Expires" content="0" /> <meta http-equiv="ImageToolbar" content="no" /> <script type="text/javascript"> function drawRadian(){ var context = document.getElementById('canvas').getContext('2d'); context.beginPath(); context.strokeStyle = "rgb(0,0,0)"; context.arc(100,100,100,0,2*Math.PI,true); context.closePath(); context.fillStyle = 'rgb(200,0,200)'; context.fill(); context.beginPath(); context.arc(50,75,25,0,2*Math.PI,true); context.fillStyle = 'rgb(0,0,0)'; context.fill(); context.beginPath(); context.arc(150,75,25,0,2*Math.PI,true); context.fillStyle = 'rgb(0,0,0)'; context.fill(); context.beginPath(); context.arc(150,75,25,0,2*Math.PI,true); context.fillStyle = 'rgb(0,0,0)'; context.fill(); context.beginPath(); context.arc(100,125,10,0,2*Math.PI,true); context.fillStyle = 'rgb(0,0,0)'; context.fill(); context.beginPath(); context.strokeStyle = "rgb(0,0,0)"; context.lineWidth = 5; context.arc(100,150,25,Math.PI/6,5*Math.PI/6,false); context.stroke(); } </script> </head> <body onload="drawRadian()"> <canvas id="canvas" width='400' height="300"> your browser doesn't support the HTMl5 elemnt canvas. </canvas> </body> </html>
最终效果:
参考:http://bbs.html5china.com/thread-229-1-1.html
http://www.ibm.com/developerworks/cn/web/1012_linlin_html5canvas/index.html?ca=drs-
相关文章推荐
- HTML5 canvas 绘制的文字如何换行?
- GDI+ 如何将图片绘制成圆形的图片
- 用canvas绘制一个圆形,实现绕着一个中心运动
- GDI+ 如何将图片绘制成圆形的图片
- android 用canvas 绘制简单圆形时钟
- canvas自适应圆形时钟绘制
- html5 canvas绘制矩形和圆形
- 使用h5 canvas绘制圆形进度条
- 绘制圆形,方法一(Canvas,drawOval)
- JavaScript Canvas绘制圆形时钟效果
- android 用canvas 绘制简单圆形时钟
- quartz2D 如何绘制圆形图片, 及圆环图片
- canvas绘制圆形
- 【Html5 每日练习】canvas绘制弧形
- 基于Skyline的TerraExplorer6.1.1如何通过二次开发实现圆形对象的手动绘制
- canvas绘制圆形进度条
- android 用canvas 绘制简单圆形时钟
- HTML5_canvas(设置画笔样式、左右跑动的小块、绘制路径的方法、写字板、绘制圆形的方法、吃豆豆、绘制文本、环形进度条)设置一个模板
- canvas 绘制圆形时钟
- canvas绘制动态加载圆形百分比