JavaScript+html5 canvas绘制缤纷多彩的三角形效果完整实例


Posted in Javascript onJanuary 26, 2016

本文实例讲述了JavaScript+html5 canvas绘制缤纷多彩的三角形效果。分享给大家供大家参考,具体如下:

运行效果截图如下:

JavaScript+html5 canvas绘制缤纷多彩的三角形效果完整实例

具体代码如下:

<!DOCTYPE HTML>
<html>
 <head>
  <title>demo</title>
  <style type="text/css">
   body {
    margin:0; padding:0; 
   }
   #canvas {
    width:500px; height:500px; border:3px solid #F2F2F2; box-shadow:0px 0px 25px #494949; margin:0 auto;
    margin-left:200px; margin-top:50px;
   }
  </style>
 </head>
 <body>
  <canvas id="canvas" width="500px" height="500px"></canvas>
  <script type="text/javascript">
   var colorArray = "01234567890ABCDEFabcdef".split("");
   var canvas = document.getElementById("canvas");
   var ctx = canvas.getContext("2d");
   function createTriangle(startPos, r, color) {
    var startX = startPos.x,
     startY = startPos.y;
     ctx.save();
     ctx.strokeStyle = color || "black";
     ctx.beginPath();
     ctx.lineWidth=2;
     ctx.moveTo(startX, startY);
     ctx.lineTo(startX+r*Math.sin(Math.PI/6), startY+r*Math.cos(Math.PI/6));
     ctx.lineTo(startX-r*Math.sin(Math.PI/6), startY+r*Math.cos(Math.PI/6));
     ctx.lineTo(startX, startY);
     ctx.closePath(); 
     ctx.stroke();
     ctx.restore();
   }
   function createColor() {
    var color = "#";
    for(var i=0; i<6; i++) {
     color += colorArray[Math.floor(Math.random()*colorArray.length)];
    }
    return color;
   }
   for(var i=0; i<100; i++) {
    var x = Math.round(Math.random()*500),
     y = Math.round(Math.random()*500),
     color = createColor();
    console.log(color);
    createTriangle({x: x, y: y}, 50, color); 
   }
  </script>
 </body>
</html>

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

Javascript 相关文章推荐
修改发贴的编辑功能
Mar 07 Javascript
javascript multibox 全选
Mar 22 Javascript
javascript中定义私有方法说明(private method)
Jan 27 Javascript
Jquery实现仿腾讯微博发表广播
Nov 17 Javascript
jQuery实现点击图片翻页展示效果的方法
Feb 16 Javascript
详解vue组件化开发-vuex状态管理库
Apr 10 Javascript
理解Angular的providers给Http添加默认headers
Jul 04 Javascript
JS Testing Properties 判断属性是否在对象里的方法
Oct 01 Javascript
vue 指令和过滤器的基本使用(品牌管理案例)
Nov 04 Javascript
vue中 数字相加为字串转化为数值的例子
Nov 07 Javascript
解决新建一个vue项目过程中遇到的问题
Oct 22 Javascript
微信小程序实现录音Record功能
May 09 Javascript
JavaScript+html5 canvas制作的百花齐放效果完整实例
Jan 26 #Javascript
JavaScript+html5 canvas绘制渐变区域完整实例
Jan 26 #Javascript
Javascript中匿名函数的调用与写法实例详解(多种)
Jan 26 #Javascript
JavaScript+html5 canvas绘制的圆弧荡秋千效果完整实例
Jan 26 #Javascript
JS组件Bootstrap Select2使用方法详解
Apr 17 #Javascript
基于JavaScript实现全屏透明遮罩div层锁屏效果
Jan 26 #Javascript
Hallo.js基于jQuery UI所见即所得的Web编辑器
Jan 26 #Javascript
You might like
第三章 php操作符与控制结构代码
2011/12/30 PHP
PHP实现生成透明背景的PNG缩略图函数分享
2014/07/08 PHP
PHP生成指定长度随机数最简洁的方法
2014/07/14 PHP
php字符串函数学习之substr()
2015/03/27 PHP
PHP读取汉字的点阵数据
2015/06/22 PHP
thinkPHP引入类的方法详解
2016/12/08 PHP
PHP多进程简单实例小结
2019/11/09 PHP
js单向链表的具体实现实例
2013/06/21 Javascript
jQuery实现带滚动导航效果的全屏滚动相册实例
2015/06/19 Javascript
JS闭包、作用域链、垃圾回收、内存泄露相关知识小结
2016/05/16 Javascript
vue 1.x 交互实现仿百度下拉列表示例
2017/10/21 Javascript
vue根据值给予不同class的实例
2018/09/29 Javascript
对angularJs中$sce服务安全显示html文本的实例
2018/09/30 Javascript
nodejs中实现用户注册路由功能
2019/05/20 NodeJs
关于layui的下拉搜索框异步加载数据的解决方法
2019/09/28 Javascript
解决pycharm双击但是无法打开的情况
2020/10/31 Javascript
[50:21]Liquid vs Winstrike 2018国际邀请赛小组赛BO2 第二场
2018/08/19 DOTA
[01:10:30]DOTA2-DPC中国联赛正赛 Dragon vs Dynasty BO3 第一场 3月4日
2021/03/11 DOTA
Python下的subprocess模块的入门指引
2015/04/16 Python
python如何通过protobuf实现rpc
2016/03/06 Python
通过Python实现自动填写调查问卷
2017/09/06 Python
python中字典按键或键值排序的实现代码
2019/08/27 Python
django创建简单的页面响应实例教程
2019/09/06 Python
python求质数列表的例子
2019/11/24 Python
CSS3实现类似翻书效果的过渡动画的示例代码
2019/09/06 HTML / CSS
土木工程专业个人求职信
2013/12/30 职场文书
简单英文演讲稿
2014/01/01 职场文书
家长给幼儿园的表扬信
2014/01/09 职场文书
物业消防安全责任书
2014/07/23 职场文书
2015年社区文体活动总结
2015/03/25 职场文书
利用Python网络爬虫爬取各大音乐评论的代码
2021/04/13 Python
zabbix agent2 监控oracle数据库的方法
2021/05/13 Oracle
vite+vue3.0+ts+element-plus快速搭建项目的实现
2021/06/24 Vue.js
手把手教你导入Go语言第三方库
2021/08/04 Golang
SpringDataJPA在Entity中常用的注解介绍
2021/12/06 Java/Android
修改Nginx配置返回指定content-type的方法
2022/09/23 Servers