| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3128 人关注过本帖
标题:HTML5 — 画弧度代码
只看楼主 加入收藏
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8078
专家分:6657
注 册:2005-11-7
结帖率:98.25%
收藏
 问题点数:0 回复次数:6 
HTML5 — 画弧度代码
<!DOCTYPE html>

<html lang="en" xmlns="http://www.
<head>
    <meta charset="utf-8" />
    <title></title>
</head>
<body>
    <canvas id="myCanvas" height="400" width="800"></canvas>
    <script>
        //定义2d绘图对象,定义角度制到弧度制的转换
        var c = document.getElementById('myCanvas').getContext('2d');
        //一个工具函数,用于将角度从角度制转化成弧度制
        function rads(x) { return x * Math.PI / 180; };

        //绘制一个圆形,如果需要椭圆的话则进行相应的缩放和旋转即可
        //由于没有当前点,因此绘制的圆形不需要当前点到圆形起点之间的直线
        c.beginPath();
        //圆心位于(75,100),半径为50,从0°到360°,顺时针旋转
        c.arc(75, 100, 50, 0, rads(360), false);

        //绘制一个楔,角度从x轴正向顺时针度量
        //要注意的是arc()方法会将当前点和弧形起点用直线相连
        //从圆心开始
        c.moveTo(200, 100);
        //圆心(200,100),半径50,从角度-60°到0°,顺时针
        c.arc(200, 100, 50, rads(-60), rads(0), false);
        //将半径添加到圆心
        c.closePath();

        //同样的楔,但是方向不同
        c.moveTo(325, 100);
        c.arc(325, 100, 50, rads(-60), rads(0), true);
        c.closePath();

        //使用arcTo()方法来绘制圆角,绘制一个点(400,50)为左上角同时还带有不同半径角的正方形
        //从上边的中点开始
        c.moveTo(450, 50);
        //添加部分上边和右上角
        c.arcTo(500, 50, 500, 150, 30);
        //添加右上角和右下角
        c.arcTo(500, 150, 400, 150, 20);
        //添加底边和左下角
        c.arcTo(400, 150, 400, 50, 10);
        //添加左边和左下角
        c.arcTo(400, 50, 500, 50, 0);
        //闭合路径来添加其余的上边
        c.closePath();

        //二次贝塞尔曲线,一个控制点
        //从点(75,250)开始
        c.moveTo(75, 250);
        //画一条以一直到点(175,250)结束的曲线
        c.quadraticCurveTo(100, 200, 175, 250);
        //标记控制点(100,200)
        c.fillRect(100 - 3, 200 - 3, 6, 6);

        //三次贝塞尔曲线
        c.moveTo(200, 250);
        //画一条以一直到点(300,250)结束的曲线
        c.bezierCurveTo(220, 220, 280, 280, 300, 250);
        //标记控制点
        c.fillRect(220 - 3, 220 - 3, 6, 6);
        c.fillRect(280 - 3, 280 - 3, 6, 6);

        //定义一些图形属性并绘制曲线
        //填充灰色
        c.fillStyle = '#aaa';
        //5个像素宽的黑色(默认颜色)线段
        c.lineWidth = 5;
        //填充该曲线
        c.fill();
        //勾勒外边框
        c.stroke();
    </script>
</body>
</html>
搜索更多相关主题的帖子: function return HTML5 title 
2015-05-25 12:39
外部三电铃
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:那一年
等 级:贵宾
威 望:57
帖 子:2012
专家分:7306
注 册:2007-12-17
收藏
得分:0 
不知道canvas相比svg有什么区别

那一年,苍井空还是处女
2015-05-25 12:47
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
关注

DO IT YOURSELF !
2015-05-25 14:28
龙牙
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大汉
等 级:贵宾
威 望:17
帖 子:769
专家分:6207
注 册:2013-3-18
收藏
得分:0 
学习

只要心是晴朗的,人生就没有雨天。
2015-05-25 18:56
纳兰伽香
Rank: 10Rank: 10Rank: 10
来 自:北京
等 级:贵宾
威 望:10
帖 子:426
专家分:1650
注 册:2015-4-5
收藏
得分:0 

风回小院庭芜绿,柳眼春相续
2015-05-26 13:31
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1503
专家分:6593
注 册:2010-7-5
收藏
得分:0 
继续学习

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-05-27 08:30
执笔画江山
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:265
专家分:1010
注 册:2015-1-13
收藏
得分:0 
不错  学习了

授人以鱼,不如授人以渔
2015-05-27 12:44
快速回复:HTML5 — 画弧度代码
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.117785 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved