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中showModalDialog 的使用解析
Apr 17 Javascript
jQuery UI插件自定义confirm确认框的方法
Mar 20 Javascript
javascript实现多栏闭合展开式广告位菜单效果实例
Aug 05 Javascript
8 行 Node.js 代码实现代理服务器
Dec 05 Javascript
js时间戳和c#时间戳互转方法(推荐)
Feb 15 Javascript
JavaScript 总结几个提高性能知识点(推荐)
Feb 20 Javascript
详解Vue 方法与事件处理器
Jun 20 Javascript
基于bootstrop常用类总结(推荐)
Sep 11 Javascript
在 webpack 中使用 ECharts的实例详解
Feb 05 Javascript
如何以Angular的姿势打开Font-Awesome详解
Apr 22 Javascript
关于TypeScript模块导入的那些事
Jun 12 Javascript
对Vue.js之事件的绑定(v-on: 或者 @ )详解
Sep 15 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
SONY ICF-SW7600的电路分析
2021/03/02 无线电
基于php导出到Excel或CSV的详解(附utf8、gbk 编码转换)
2013/06/25 PHP
PHP使用Mysql事务实例解析
2014/09/08 PHP
Mac环境下php操作mysql数据库的方法分享
2015/05/11 PHP
php数组实现根据某个键值将相同键值合并生成新二维数组的方法
2017/04/26 PHP
jquery之Document元素选择器篇
2008/08/14 Javascript
利用javascript实现一些常用软件的下载导航
2009/08/03 Javascript
javascript 拖动表格行实现代码
2011/05/05 Javascript
php与js的区别是什么
2013/08/05 Javascript
深入理解JavaScript中的传值与传引用
2013/12/09 Javascript
js css 实现遮罩层覆盖其他页面元素附图
2014/09/22 Javascript
JavaScript事件处理的方式(三种)
2016/04/26 Javascript
JavaScript算法系列之快速排序(Quicksort)算法实例详解
2016/09/04 Javascript
JavaScript中 DOM操作方法小结
2017/04/25 Javascript
JavaScript定义函数_动力节点Java学院整理
2017/06/27 Javascript
浅谈如何使用webpack构建多页面应用
2018/05/30 Javascript
轻量级富文本编辑器wangEditor结合vue使用方法示例
2018/10/10 Javascript
Vue移动端右滑屏幕返回上一页附源码下载
2019/06/26 Javascript
微信小程序实现发微博功能的示例代码
2020/06/24 Javascript
Vue 实现可视化拖拽页面编辑器
2021/02/01 Vue.js
python开发之IDEL(Python GUI)的使用方法图文详解
2015/11/12 Python
python中实现控制小数点位数的方法
2019/01/24 Python
Python字符串处理的8招秘籍(小结)
2019/08/13 Python
python数据类型之间怎么转换技巧分享
2019/08/20 Python
几款好用的python工具库(小结)
2020/10/20 Python
BRASTY捷克:购买香水、化妆品、手袋和手表
2017/07/12 全球购物
巴黎一票通:The Paris Pass
2018/02/10 全球购物
什么是网络协议
2016/04/07 面试题
培训班开班仪式主持词
2014/03/28 职场文书
巾帼文明岗汇报材料
2014/12/24 职场文书
教师工作决心书
2015/02/04 职场文书
2015年销售员工作总结范文
2015/04/07 职场文书
中考百日冲刺决心书
2015/09/22 职场文书
领导干部学习十八届五中全会精神心得体会
2016/01/05 职场文书
2019最新版劳务派遣管理制度
2019/08/16 职场文书
SpringBoot前端后端分离之Nginx服务器下载安装过程
2022/08/14 Servers