html5模拟平抛运动(模拟小球平抛运动过程)
来源:易贤网 阅读:1192 次 日期:2016-07-13 13:53:32
温馨提示:易贤网小编为您整理了“html5模拟平抛运动(模拟小球平抛运动过程)”,方便广大网友查阅!

物体以一定的初速度沿水平方向抛出,如果物体仅受重力作用,这样的运动叫做平抛运动。平抛运动可看作水平方向的匀速直线运动以及竖直方向的自由落体运动的合运动。平抛运动的物体,由于所受的合外力为恒力,所以平抛运动是匀变速曲线运动,平抛物体的运动轨迹为一抛物线。平抛运动是曲线运动 平抛运动的时间仅与抛出点的竖直高度有关;物体落地的水平位移与时间(竖直高度)及水平初速度有关。

代码如下:

<html>

<head>

<meta charset=utf-8>

<title>html5炮弹</title>

<script>

//box

var box_x=0;

var box_y=0;

var box_width=300;

var box_height=300;

//ball

var ball_x=10;

var ball_y=10;

var ball_radius=10;

var ball_vx=10;

var ball_vy=0;

//constant

var g=10;//note

var rate=0.9;

//bound

var bound_left=box_x+ball_radius;

var bound_right=box_x+box_width-ball_radius;

var bound_top=box_y+ball_radius;

var bound_bottom=box_y+box_height-ball_radius;

//context

var ctx;

function init()

{

ctx=document.getElementById('canvas').getContext('2d');

ctx.lineWidth=ball_radius;

ctx.fillStyle="rgb(200,0,50)";

move_ball();

setInterval(move_ball,100);

}

function move_ball()

{

ctx.clearRect(box_x,box_y,box_width,box_height);

move_and_check();

ctx.beginPath();

ctx.arc(ball_x,ball_y,ball_radius,0,Math.PI*2,true);

ctx.fill();

ctx.strokeRect(box_x,box_y,box_width,box_height);

}

function move_and_check()

{

var cur_ball_x=ball_x+ball_vx;

var temp=ball_vy;

ball_vy=ball_vy+g;

var cur_ball_y=ball_y+ball_vy+g/2;

if(cur_ball_x<bound_left)

{

cur_ball_x=bound_left;

ball_vx=-ball_vx*0.9;

ball_vy=ball_vy*0.9;

}

if(cur_ball_x>bound_right)

{

cur_ball_x=bound_right;

ball_vx=-ball_vx*0.9;

ball_vy=ball_vy*0.9;

}

if(cur_ball_y<bound_top)

{

cur_ball_y=bound_top;

ball_vy=-ball_vy*0.9;

ball_vx=ball_vx*0.9;

}

if(cur_ball_y>bound_bottom)

{

cur_ball_y=bound_bottom;

ball_vy=-ball_vy*0.9;

ball_vx=ball_vx*0.9;

}

ball_x=cur_ball_x;

ball_y=cur_ball_y;

}

</script>

</head>

<body onLoad="init()">

<canvas id="canvas" width="400" height="400"/>

</body>

</html>

html5模拟小球平抛运动过程。

更多信息请查看网页制作
由于各方面情况的不断调整与变化,易贤网提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:hfpxwx
咨询QQ:526150442(9:00—18:00)版权所有:易贤网
云南网警报警专用图标