javascript_抛物线系列_04已知起点和终点画抛物线
2018-01-24 14:23
453 查看
代码:
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <style type="text/css"> *{ margin:0; padding:0; list-style: none } #box{ position:absolute; left:0px; top:0px; width:100px; height:100px; background-color:pink; } </style> </head> <body style="height:1000px"> </body> </html> <script type="text/javascript"> //要画抛物线: //已知条件: //1、已知起点和终点 //2、根据起点和终点进行计算p let startPoint={x:200,y:400}; let endPoint = {x:500,y:10}; let p=0; //初始化数据(计算p) function initData(){ let tempPoint = {x:endPoint.x-startPoint.x,y:endPoint.y-startPoint.y}; //y2 = -2px; p = (tempPoint.y*tempPoint.y)/(2*tempPoint.x); } //初始化界面 function initUI(){ //外观(打点): drawPoint(startPoint); drawPoint(endPoint); } //打点函数(在界面上指定的位置画一个点) function drawPoint(point){ let divObj = document.createElement("div"); let cssStr = "position:absolute;width:10px;height:10px;background-color:red;"; cssStr += "left:"+point.x+"px;top:"+point.y+"px;"; divObj.style.cssText = cssStr; document.body.appendChild(divObj); } let myTimer=null; function moveObj(){ if(myTimer!=null){ window.clearInterval(myTimer); } myTimer = setInterval(goStep,10); } let x = 0; let incX = 1;//x的方向 function goStep(){ //1、假定起点在原点的抛物线 x=x+incX; if(x>endPoint.x-startPoint.x){ window.clearInterval(myTimer); myTimer = null; return; } y = -1*Math.sqrt(2*p*x); //2、改变抛物线的原点(移动原点,偏移)。 let xTemp = x+startPoint.x; let yTemp = y+startPoint.y; //外观(打点): drawPoint({x:xTemp,y:yTemp}); } window.onload = function(){ initData();//计算p initUI();//在界面上画出起点和终点。 moveObj();//根据起点和终点绘制抛物线 } </script>
相关文章推荐
- 已知起点和终点求炮弹轨迹
- JavaScript进阶系列04,函数参数个数不确定情况下的解决方案
- 如何用JavaScript做一个贪吃蛇游戏,贪吃蛇系列_04控制方向和食物
- javascript_抛物线系列_01右开口,顶点的横向(x)是0
- javaScript系列 [04]-javaScript的原型链
- 抛物线算法(已知起点、终点、高度)
- 抛物线系列_03指定起点画抛物线
- C++中利用堆栈得到一条已知起点与终点的可通行的路径并输出
- hdu5335 已知起点终点 找最小的01串
- ArcGIS API for JavaScript开发教程系列(一)之创建地图
- 深入理解JavaScript系列(5):强大的原型和原型链
- 深入理解JavaScript系列(21):S.O.L.I.D五大原则之接口隔离原则ISP详解
- JavaScript ,Python,Go,java,C#系列算法之【插入排序】篇
- 单源起点最短路+单源终点最短路——pku3268
- 【脚本语言系列】关于JavaScript算法,你需要知道的事
- UML系列04之 UML时序图
- 从0开始学习 GitHub 系列之「04.向GitHub 提交代码」
- 理解Javascript_04_数据模型
- JavaScript基础系列3---选择结构
- 5X5迷宫,求起点和终点的最短路径以及最短路径个数(百分数)