来源:未知 时间:2022-07-14 11:00 作者:小飞侠 阅读:次
[导读] 简介 加速运动,指的是方向相同、速度大小变化的运动。速度递增的是加速运动,速度递减的是减速运动。加速运动分为两种:匀加速运动和变加速运动。说起加速运动,有一个东西我...
简介加速运动,指的是方向相同、速度大小变化的运动。速度递增的是加速运动,速度递减的是减速运动。加速运动分为两种:匀加速运动和变加速运动。说起加速运动,有一个东西我们不得不提,那就是加速度。加速度,指的是单位时间内速度改变的矢量。匀速运动与加速运动的比较如图所示。 从图 中我们可以看出:匀速运动的速度大小是一直保持不变的,而加速运动的速度大小会随着时间变化而改变(变大或变小)。 右图展示了一个匀加速运动,在 Δt 时间内,速度增加了 Δv,那么用公式表示加速度为 a=Δv/Δt。 语法vx += ax;vy += ay; object.x += vx; object.y += vy; 说明object.x 表示物体 x 轴坐标,object.y 表示物体 y 轴坐标。vx 表示 x 轴方向的速度大小,vy 表示 y 轴方向的速度大小。 ax 表示 x 轴方向的加速度,ay 表示 y 轴方向的加速度。当 ax 大于 0 时,物体向右做匀加速运动;当 ax 小于 0 时,物体向左做匀加速运动;当 ax 等于 0 时,物体按原来速度运动。ay 跟 ax 同理。 效果图源码<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <script src="js/tools.js"></script> <script src="js/ball.js"></script> <script> function $$(id) { return document.getElementById(id); } window.onload = function () { var cnv = $$("canvas"); var cxt = cnv.getContext("2d"); //实例化一个小球 var ball = new Ball(0, cnv.height / 2); //初始化X轴方向速度及加速度 var vx = 0; var ax = 0.2; (function frame() { window.requestAnimationFrame(frame); cxt.clearRect(0, 0, cnv.width, cnv.height); ball.x += vx; ball.fill(cxt); vx += ax; })(); } </script> </head> <body> <canvas id="canvas" width="200" height="150" style="border:1px solid silver;"></canvas> </body> </html> |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com