js+canvas绘制五角星的方法

 更新时间:2016年01月28日 10:48:06   作者:m1870164  
这篇文章主要介绍了js+canvas绘制五角星的方法,涉及JavaScript调用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动画特效与技巧汇总》《JavaScript运动效果与技巧汇总》及《JavaScript数据结构与算法技巧总结

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

相关文章

  • js中自定义方法实现停留几秒sleep

    js中自定义方法实现停留几秒sleep

    js中不存在自带的sleep方法,要想休眠要自己定义个方法,需要的朋友可以参考下
    2014-07-07
  • 详解前端安全之JavaScript防http劫持与XSS

    详解前端安全之JavaScript防http劫持与XSS

    作为前端,一直以来都知道HTTP劫持与XSS跨站脚本、CSRF跨站请求伪造。防御这些劫持最好的方法是从后端入手,前端能做的太少。而且由于源码的暴露,攻击者很容易绕过防御手段。但这不代表我们去了解这块的相关知识是没意义的,本文的许多方法,用在其他方面也是大有作用。
    2021-05-05
  • DatePickerDialog 自定义样式及使用全解

    DatePickerDialog 自定义样式及使用全解

    这篇文章主要介绍了DatePickerDialog 自定义样式及使用全解,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • 微信小程序实现左滑修改、删除功能

    微信小程序实现左滑修改、删除功能

    这篇文章主要为大家详细介绍了微信小程序实现左滑修改、删除功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-10-10
  • javascript实现10个球随机运动、碰撞实例详解

    javascript实现10个球随机运动、碰撞实例详解

    这篇文章主要介绍了javascript实现10个球随机运动、碰撞的方法,实例分析了javascript实现小球碰撞的原理与实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • 关于this和self的使用说明

    关于this和self的使用说明

    刚接触python的时候,最不习惯的事情,就是每个方法都要加一个self。无论Javascript还是C#,都直接一个this搞定,干嘛非要加一个变量self。
    2010-08-08
  • 可能被忽略的一些JavaScript数组方法细节

    可能被忽略的一些JavaScript数组方法细节

    这篇文章主要给大家介绍了一些可能被忽略的JavaScript数组方法细节,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-02-02
  • ES6 javascript的异步操作实例详解

    ES6 javascript的异步操作实例详解

    这篇文章主要介绍了ES6 javascript的异步操作,结合实例形式分析了ES5中异步操作的概念、原理、使用方法及相关注意事项,需要的朋友可以参考下
    2017-10-10
  • javascript实现的上下无缝滚动效果

    javascript实现的上下无缝滚动效果

    这篇文章主要介绍了javascript实现的上下无缝滚动效果,具有无缝滚动及响应鼠标滑过停止滚动的功能,简便实用,需要的朋友可以参考下
    2016-09-09
  • js学习心得_一个简单的动画库封装tween.js

    js学习心得_一个简单的动画库封装tween.js

    下面小编就为大家带来一篇js学习心得_一个简单的动画库封装tween.js。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07

最新评论