js+canvas绘制五角星的方法


Posted in Javascript onJanuary 28, 2016

本文实例讲述了js+canvas绘制五角星的方法。分享给大家供大家参考,具体如下:

运行效果截图如下:

js+canvas绘制五角星的方法

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>canvas绘制五角星 </title>
  <script type="text/javascript" >
    window.onload = function () {
      var canvas = document.getElementById("canvas");
      if (canvas) {
        var context = canvas.getContext("2d");
        drawStar(context, 50, 100, 100);
      } else {
        document.writeln("浏览器不支持canvas组件");
      }
    }
    function drawStar(context, r, x, y) {
      context.lineWidth = 5;
      context.beginPath();
      var dit = Math.PI * 4 / 5;
      var sin = Math.sin(0) * r + y;
      var cos = Math.cos(0) * r + x;
      console.log(0+":"+0);
      context.moveTo(cos, sin);
      for (var i = 0; i < 5; i++) {
        var tempDit = dit * i;
        sin = Math.sin(tempDit) * r + y;
        cos = Math.cos(tempDit) * r + x;
        context.lineTo(cos, sin);
        console.log(sin+":"+sin+":"+tempDit);
      }
      context.closePath();
      context.strokeStyle = "red";
      context.fillStyle = "#DDDDDD";
      context.fill();
    }
  </script>
</head>
<body>
<canvas id="canvas" ></canvas>
</body>
</html>

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
JS日期和时间选择控件升级版(自写)
Aug 02 Javascript
Angularjs中如何使用filterFilter函数过滤
Feb 06 Javascript
jquery实现界面无刷新加载登陆注册
Jul 30 Javascript
如何制作幻灯片(代码分享)
Jan 06 Javascript
AngularJS学习第二篇 AngularJS依赖注入
Feb 13 Javascript
Bootstrap实现的经典栅格布局效果实例【附demo源码】
Mar 30 Javascript
vue实现的上传图片到数据库并显示到页面功能示例
Mar 17 Javascript
简述JS控制台的使用
Jul 15 Javascript
react写一个select组件的实现代码
Apr 03 Javascript
使用Webpack提升Vue.js应用程序的4种方法(翻译)
Oct 09 Javascript
layui table表格数据的新增,修改,删除,查询,双击获取行数据方式
Nov 14 Javascript
javascript实现贪吃蛇经典游戏
Apr 10 Javascript
js+html5实现的自由落体运动效果代码
Jan 28 #Javascript
js判断上传文件后缀名是否合法
Jan 28 #Javascript
Angular中$compile源码分析
Jan 28 #Javascript
实例讲解JS中setTimeout()的用法
Jan 28 #Javascript
jQuery+canvas实现的球体平抛及颜色动态变换效果
Jan 28 #Javascript
jQuery+canvas实现简单的球体斜抛及颜色动态变换效果
Jan 28 #Javascript
基于javascript实现动态显示当前系统时间
Jan 28 #Javascript
You might like
在PHP中实现Javascript的escape()函数代码
2010/08/08 PHP
PHP中的错误处理、异常处理机制分析
2012/05/07 PHP
ThinkPHP中U方法的使用浅析
2014/06/13 PHP
php对数组内元素进行随机调换的方法
2015/05/12 PHP
详解PHP序列化反序列化的方法
2015/10/27 PHP
CodeIgniter视图使用注意事项
2016/01/20 PHP
Zend Framework教程之MVC框架的Controller用法分析
2016/03/07 PHP
PHP设计模式之装饰器模式实例详解
2018/02/07 PHP
JavaScript window.setTimeout() 的详细用法
2009/11/04 Javascript
在JavaScript中获取请求的URL参数
2010/12/22 Javascript
JSON辅助格式化处理方法
2013/03/26 Javascript
Jquery多选框互相内容交换的实例代码
2013/07/04 Javascript
javascript中的取反再取反~~没有意义
2014/04/06 Javascript
jQuery图片特效插件Revealing实现拉伸放大
2015/04/22 Javascript
jQuery中队列queue()函数的实例教程
2016/05/03 Javascript
深入浅出理解JavaScript高级定时器原理与用法
2018/08/02 Javascript
在angularJs中进行数据遍历的2种方法
2018/10/08 Javascript
微信小程序--获取用户地理位置名称(无须用户授权)的方法
2019/04/29 Javascript
vue+web端仿微信网页版聊天室功能
2019/04/30 Javascript
vue实现直播间点赞飘心效果的示例代码
2019/09/20 Javascript
微信小程序swiper使用网络图片不显示问题解决
2019/12/13 Javascript
Python标准库与第三方库详解
2014/07/22 Python
Python简单获取自身外网IP的方法
2016/09/18 Python
python 协程中的迭代器,生成器原理及应用实例详解
2019/10/28 Python
Python django搭建layui提交表单,表格,图标的实例
2019/11/18 Python
Python实现删除某列中含有空值的行的示例代码
2020/07/20 Python
CSS3 animation ? steps 函数详解
2019/08/30 HTML / CSS
Html5原创俄罗斯方块(基于canvas)
2019/01/07 HTML / CSS
EJB的激活机制
2013/10/25 面试题
新学期红领巾广播稿
2014/01/14 职场文书
优秀管理者获奖感言
2014/02/17 职场文书
缅怀革命先烈演讲稿
2014/05/14 职场文书
2014年学前班工作总结
2014/12/08 职场文书
高校教师个人总结
2015/02/10 职场文书
学生个人总结范文
2015/02/15 职场文书
windows server 2012安装FTP并配置被动模式指定开放端口
2022/06/10 Servers