来源:未知 时间: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