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 相关文章推荐
JavaScript高级程序设计阅读笔记(五) ECMAScript中的运算符(一)
Feb 27 Javascript
jQuery获得内容和属性示例代码
Jan 16 Javascript
Select标签下拉列表二级联动级联实例代码
Feb 07 Javascript
jquery trigger伪造a标签的click事件取代window.open方法
Jun 23 Javascript
jquery实现标签支持图文排列带上下箭头按钮的选项卡
Mar 14 Javascript
Jquery实现select multiple左右添加和删除功能的简单实例
May 26 Javascript
原生js实现ajax方法(超简单)
Sep 20 Javascript
vue.js通过自定义指令实现数据拉取更新的实现方法
Oct 18 Javascript
Node.js制作简单聊天室
Jan 12 Javascript
DOM事件探秘篇
Feb 15 Javascript
JS通过调用微信API实现微信支付功能的方法示例
Jun 29 Javascript
什么是Vue.js框架 为什么选择它?
Oct 17 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
window+nginx+php环境配置 附配置搭配说明
2010/12/29 PHP
PHP 修复未正常关闭的HTML标签实现代码(支持嵌套和就近闭合)
2012/06/07 PHP
PHP return语句另类用法不止是在函数中
2014/09/17 PHP
php微信公众平台开发(四)回复功能开发
2016/12/06 PHP
Laravel5.* 打印出执行的sql语句的方法
2017/07/24 PHP
详解PHP PDO简单教程
2019/05/28 PHP
Laravel配合jwt使用的方法实例
2020/10/25 PHP
jQuery实现流动虚线框的方法
2015/01/29 Javascript
react-native-fs实现文件下载、文本存储的示例代码
2017/09/22 Javascript
浅谈es6中export和export default的作用及区别
2018/02/07 Javascript
详解基于Vue,Nginx的前后端不分离部署教程
2018/12/04 Javascript
vue-cli3+ts+webpack实现多入口多出口功能
2019/05/30 Javascript
vue项目中在可编辑div光标位置插入内容的实现代码
2020/01/07 Javascript
React Hooks 实现和由来以及解决的问题详解
2020/01/17 Javascript
深入理解 ES6中的 Reflect用法
2020/07/18 Javascript
常用python数据类型转换函数总结
2014/03/11 Python
用Python进行TCP网络编程的教程
2015/04/29 Python
在Python web中实现验证码图片代码分享
2017/11/09 Python
PyQt5每天必学之滑块控件QSlider
2018/04/20 Python
python pytest进阶之fixture详解
2019/06/27 Python
解决django FileFIELD的编码问题
2020/03/30 Python
python3 中时间戳、时间、日期的转换和加减操作
2020/07/14 Python
CSS3实现时间轴效果
2016/07/11 HTML / CSS
Myprotein蛋白粉美国官网:欧洲畅销运动营养品牌
2016/11/15 全球购物
手工制作的意大利太阳镜和光学元件:Illesteva
2019/01/19 全球购物
大学生就业自我鉴定
2013/10/26 职场文书
家居设计专业个人自荐信范文
2013/11/26 职场文书
高级编程求职信模板
2014/02/16 职场文书
洗手间标语
2014/06/23 职场文书
乡镇安全生产目标责任书
2014/07/23 职场文书
迎七一演讲稿
2014/09/12 职场文书
2014年数学教研组工作总结
2014/12/06 职场文书
信用卡催款律师函
2015/05/27 职场文书
财务人员廉洁自律心得体会
2016/01/13 职场文书
常用的Python代码调试工具总结
2021/06/23 Python
GTX1660显卡搭配显示器推荐
2022/04/19 数码科技