这次给大家带来canvas怎么实现轨迹回放,canvas实现轨迹回放的注意事项有哪些,下面就是实战案例,一起来看一下。
本文通过json机构,HTML代码以及JS代码详细给大家分析了canvas轨迹回放功能实现的过程,以下是全部内容。
json结构
[ { "path": [ { "x": 82, "y": 43 }, { "x": 83, "y": 43 }, { "x": 84, "y": 45 }, { "x": 86, "y": 47 }, { "x": 86, "y": 49 }, { "x": 86, "y": 54 }, { "x": 86, "y": 59 }, { "x": 86, "y": 64 }, { "x": 86, "y": 69 }, { "x": 86, "y": 74 }, { "x": 86, "y": 78 }, { "x": 86, "y": 83 }, { "x": 86, "y": 87 }, { "x": 86, "y": 89 }, { "x": 86, "y": 91 }, { "x": 86, "y": 92 }, { "x": 86, "y": 93 }, { "x": 86, "y": 94 }, { "x": 86, "y": 95 } ] }, { "path": [ { "x": 129, "y": 36 }, { "x": 129, "y": 39 }, { "x": 129, "y": 44 }, { "x": 129, "y": 49 }, { "x": 129, "y": 54 }, { "x": 129, "y": 59 }, { "x": 128, "y": 65 }, { "x": 127, "y": 73 }, { "x": 125, "y": 78 }, { "x": 125, "y": 81 }, { "x": 124, "y": 88 }, { "x": 123, "y": 91 }, { "x": 123, "y": 94 }, { "x": 123, "y": 96 }, { "x": 123, "y": 97 }, { "x": 123, "y": 98 }, { "x": 123, "y": 99 }, { "x": 122, "y": 100 } ] }]
登录后复制
html
将json作为js文件引入,并将其赋值给全局变量testPath(引入方式按照实际项目要求来)
*{margin:0; padding:0;}#test{border:1px solid #ccc; background: #eee; margin:20px 30px;}
登录后复制
js
$('#start').click(function(event) { var lineIndex = 0,pointIndex = 0,line2; var obj = document.getElementById('test'); var cxt = obj.getContext('2d'); cxt.lineWidth = 1; cxt.strokeStyle = 'red'; cxt.lineCap = 'round'; cxt.clearRect(0,0,600,200); function drawBegin(){ cxt.beginPath(); pointIndex=0; var intervalHandle = window.setInterval(function () { line2 = testPath[lineIndex].path[pointIndex]; if (!line2) { window.clearInterval(intervalHandle); if (lineIndex < testPath.length - 1) { lineIndex = lineIndex + 1; drawBegin(); } }else{ if (pointIndex == 0) { cxt.moveTo(line2.x, line2.y); } pointIndex = pointIndex + 1; cxt.lineTo(line2.x, line2.y); cxt.stroke(); } },0); } drawBegin();});
登录后复制
相信看了本文案例你已经掌握了方法,更多精彩请关注【创想鸟】其它相关文章!
推荐阅读:
vue mixins与extends的使用方法
vue.js vue-router提升用户体验
以上就是canvas怎么实现轨迹回放的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2772400.html