全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

canvas绘制的直线动画

话不多说,请看代码:

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title>first line</title>
 <style type="text/css">
       body{
         background: #456E89;
       }
 .canvas {
 height: 300px;
 width: 300px; 
 margin: 0 auto;
 font-family: arial;
 }
 </style>
 </head>
 <body>
 <div class="canvas">
 <canvas id="cvs" width="300" height="300"></canvas>
 </div>
 <script type="text/javascript">
 var cvs = document.getElementById("cvs").getContext("2d");
 function Anim(opt) { //初始化值
 this.opt = opt;
 }
 //node 表示画布节点
 //staX 表示开始x坐标
 //staY 表示开始y坐标
 //len表示终点坐标,
 //timing表示运行的间隔时间, 
 //num表示坐标增长的大小 
 //direc表示判断绘制线条的方向,false表示X轴,ture表示Y轴
 //lw表示线宽的大小 
 //color 表示绘制线条颜色
 Anim.prototype.draw = function() { //绘制直线的线条
 var opt = this.opt; //设置对象的属性
 var adx = opt.staX;
 var ady = opt.staY;
 var that = {
  x: opt.staX,
  y: opt.staY
 };
 var Time = setInterval(function() {
  opt.direc //判断绘制方向
  ?
  opt.len > ady ? ady += opt.num : ady -= opt.num :
  opt.len > adx ? adx += opt.num : adx -= opt.num;
  if(adx == opt.len || ady == opt.len) { //停止循环
  clearInterval(Time);
  }
  opt.Node.beginPath(); // 开始绘制线条
  opt.Node.moveTo(that.x, that.y);
  opt.Node.lineTo(adx, ady);
  opt.Node.lineWidth = opt.lw || 1;
  opt.Node.strokeStyle = opt.color;
  opt.Node.stroke();
 }, opt.timing);
 };
 Anim.prototype.txt = function(opc) {//绘制文字 
 cvs.beginPath();
 cvs.fillStyle = "rgba(255,255,255,"+opc+")";
 cvs.font = "200px arial";
 cvs.fillText("L", 100, 200);
 };
 var line1 = new Anim({ //实例
 Node: cvs,
 color: "#fff",
 staX: 114,
 staY: 58,
 len: 134,
 timing: 50,
 num: 1,
 direc: false,
 lw: 2
 });
 line1.draw(); //执行绘制
 var line2 = new Anim({
 Node: cvs,
 color: "#fff",
 staX: 115,
 staY: 58,
 len: 200,
 timing: 20,
 num: 1,
 direc: true,
 lw: 2
 });
 line2.draw();
 var line3 = new Anim({
 Node: cvs,
 color: "#fff",
 staX: 133,
 staY: 184,
 len: 58,
 timing: 20,
 num: 1,
 direc: true,
 lw: 2
 });
 line3.draw();
 var line4 = new Anim({
 Node: cvs,
 color: "#fff",
 staX: 132,
 staY: 184,
 len: 203,
 timing: 35,
 num: 1,
 direc: false,
 lw: 2
 });
 line4.draw();
 var line5 = new Anim({
 Node: cvs,
 color: "#fff",
 staX: 203,
 staY: 199,
 len: 115,
 timing: 35,
 num: 1,
 direc: false,
 lw: 2
 });
 line5.draw();
 var line6 = new Anim({
 Node: cvs,
 color: "#fff",
 staX: 203,
 staY: 199,
 len: 184,
 timing: 50,
 num: 1,
 direc: true,
 lw: 2
 });
 line6.draw();
 var test = new Anim();//绘制文字实例
 setTimeout(function () {
 var num = 0;
 var times = setInterval(function () {
  num++;
  var t = num/100;
  if(t === 1){
  clearInterval(times);
  }
  test.txt(t);
 },50)
 },3000)
 </script>
 </body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# canvas绘制动画  # canvas绘制直线  # JavaScript使用canvas绘制坐标和线  # 多说  # id  # div  # arial  # javascript  # script  # cvs  # margin  # width  # px  # family  # font  # auto  # var  # staY  # staX  # node  # num  # timing  # len 


相关文章: 零服务器AI建站解决方案:快速部署与云端平台低成本实践  微信h5制作网站有哪些,免费微信H5页面制作工具?  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  已有域名如何免费搭建网站?  网站制作软件有哪些,制图软件有哪些?  头像制作网站在线制作软件,dw网页背景图像怎么设置?  建站主机功能解析:服务器选择与快速搭建指南  如何在IIS中新建站点并解决端口绑定冲突?  建站主机选虚拟主机还是云服务器更好?  湖州网站制作公司有哪些,浙江中蓝新能源公司官网?  如何在局域网内绑定自建网站域名?  智能起名网站制作软件有哪些,制作logo的软件?  如何用y主机助手快速搭建网站?  天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?  如何制作算命网站,怎么注册算命网站?  网站制作说明怎么写,简述网页设计的流程并说明原因?  C#怎么使用委托和事件 C# delegate与event编程方法  保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?  怀化网站制作公司,怀化新生儿上户网上办理流程?  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  Python路径拼接规范_跨平台处理说明【指导】  佛山企业网站制作公司有哪些,沟通100网上服务官网?  哈尔滨网站建设策划,哈尔滨电工证查询网站?  定制建站策划方案_专业建站与网站建设方案一站式指南  一键网站制作软件,义乌购一件代发流程?  非常酷的网站设计制作软件,酷培ai教育官方网站?  公众号网站制作网页,微信公众号怎么制作?  红河网站制作公司,红河事业单位身份证如何上传?  如何在阿里云虚拟主机上快速搭建个人网站?  装修招标网站设计制作流程,装修招标流程?  建站之星体验版:智能建站系统+响应式设计,多端适配快速建站  合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  英语简历制作免费网站推荐,如何将简历翻译成英文?  如何快速完成中国万网建站详细流程?  学校免费自助建站系统:智能生成+拖拽设计+多端适配  建站之星下载版如何获取与安装?  专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?  建站之星后台搭建步骤解析:模板选择与产品管理实操指南  建站中国官网:模板定制+SEO优化+建站流程一站式指南  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  长沙做网站要多少钱,长沙国安网络怎么样?  网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?  七夕网站制作视频,七夕大促活动怎么报名?  香港服务器选型指南:免备案配置与高效建站方案解析  小型网站建站如何选择虚拟主机?  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  开源网站制作软件,开源网站什么意思?  唐山网站制作公司有哪些,唐山找工作哪个网站最靠谱? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。