Komentar: Objek dilemparkan ke arah horizontal pada kecepatan awal tertentu. Jika objek hanya dipengaruhi oleh gravitasi, gerakan seperti itu disebut gerakan lemparan datar. Artikel ini memperkenalkan penggunaan HTML5 untuk mensimulasikan gerakan lemparan datar bola kecil. Kode spesifiknya adalah sebagai berikut. Teman yang tertarik dapat merujuknya. Saya harap ini akan membantu Anda.
Suatu objek dilemparkan ke arah horizontal pada kecepatan awal tertentu. Jika objek hanya dipengaruhi oleh gravitasi, gerakan seperti itu disebut gerakan lemparan datar. Gerakan casting datar dapat dianggap sebagai gerakan linier konstan dalam arah horizontal dan gerakan kombinasi gerakan jatuh bebas dalam arah vertikal. Untuk benda-benda yang bernada datar, gerakan bernada datar adalah gerakan kurva kecepatan yang seragam, dan lintasan gerak dari objek bernada datar adalah parabola. Gerakan penyebaran horizontal adalah gerakan kurva. Waktu gerakan penyebaran datar hanya terkait dengan ketinggian vertikal titik lemparan; Perpindahan horizontal dari objek pendaratan terkait dengan waktu (tinggi vertikal) dan kecepatan awal horizontal.
<Html>
<head>
<Meta Charset = UTF-8>
<title> html5 shells </iteme>
<script>
//kotak
var box_x = 0;
var box_y = 0;
var box_width = 300;
var box_height = 300;
//bola
var ball_x = 10;
var ball_y = 10;
var ball_radius = 10;
var ball_vx = 10;
var ball_vy = 0;
//konstan
var g = 10; // Catatan
var rate = 0,9;
//melompat
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;
//konteks
var ctx;
fungsi 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>
<Canvas/>
</body>
</html>
HTML5 mensimulasikan proses pelemparan bola bola.