放物運動の飛距離計算
平らな地面では45°で投げたときに最も遠くまで届き、飛距離は速度の2乗をgで割った値になります。初速、角度、重力を入力すると、空気抵抗を加える前の目安となる理想的な水平飛距離がメートルで分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 速度
- 20
- 角度
- 45
- 重力
- 9.80665
- 値域
- 40.7886485191
空気抵抗を無視したとき、投射体の水平飛距離は、平らな地面での発射から着地までに進む距離です。この放物運動の飛距離計算機は、発射速度、発射角、重力加速度を受け取り、閉じた恒等式、すなわち R が v の二乗に発射角の二倍の正弦を掛けて g で割った値、からその飛距離を返します。宿題の確認、スポーツの投擲の見積もり、ゲーム物理サンドボックスの調整、空気抵抗を加える前の真空上限の取得にご利用ください。
平地の飛距離公式が実際に計算するもの
平らな地面での理想的な放物運動は、一定の重力加速度のもと、空気抵抗・風・回転・惑星の曲率を無視した二次元の運動学として扱います。水平速度は発射角の余弦に v を掛けた値のまま保たれ、鉛直速度は発射角の正弦に v を掛けた値から始まり、一定の下向き加速度のもとで線形に減少します。投射体は飛行時間 2v·sinθ/g の後に発射高さへ戻ります。
その時間に変わらない水平速度を掛けると、簡潔な恒等式 R = v²·sin(2θ)/g、すなわち速度の二乗に発射角の二倍の正弦を掛けて g で割った式が得られます。この計算機はその恒等式を評価し、速度が毎秒メートル、角度が度、重力が毎秒毎秒メートルのとき、飛距離をメートルで返します。
導出は高さ零で始まり高さ零で終わるため、崖・バルコニー・高い台からの投擲は別の二次方程式になり、ここでは対象外です。零度は平らな地面にすぐ着地する純粋な水平投げなので、報告される飛距離は零です。九十度は純粋な鉛直打ち上げで、水平変位も零です。
四十五度は平地で飛距離を最大にし、九十度の正弦が 1 になるため R は v の二乗を g で割った値に縮みます。三十度と六十度のような余角は同じ理想飛距離を共有し、宿題の採点やゲームサンドボックスでの二つの発射解の比較に役立ちます。
数値は常に真空・平地の基準として扱い、スポーツ・弾道・シミュレーションで現実性が必要なときは、空気抵抗や地形を別に重ねてください。
速度、角度、重力の入力の選び方
速度は毎秒メートルでの発射の総合的な大きさであり、水平成分や鉛直成分ではありません。速度零は物理的に妥当で飛距離零になります。角度は水平から上向きに度で測り、零から九十までの閉区間に含まれなければなりません。
重力は毎秒毎秒メートルの下向き加速度で、厳密に正でなければなりません。零または負の値は飛距離公式を未定義にするか着地条件を逆転させるため、Infinity や符号付きの奇妙な値を返す代わりに拒否されます。単位は一貫させてください。
速度と重力はメートルと秒、角度は度です。速度に時速キロメートルを使い、教室の g を十のまま換算しないと、数学的には正しくても問題文にとっては物理的に無意味な数になります。地球の典型問題は九点八零六六五メートル毎秒毎秒を使います。
月の宿題、g を十に固定する試験、独自加速度のゲーム世界は、対応する正の重力を渡せばそのまま使えます。
結果の読み方と宿題・パイプラインでの使い方
成功時の本体は主結果として飛距離を返し、実際に使った速度・角度・重力と、R が v の二乗に二倍角の正弦を掛けて g で割ったことを述べる公式文字列も付けます。四十五度では角度の二倍の正弦が 1 になるので、飛距離は v²/g に簡約され、与えられた速度に対して平地で可能な最大になります。
余角は理想条件で同じ飛距離を共有するので、見た目は違ってもどちらも正しい二つの答案を速く採点できます。検証に失敗しても残高は課金されません。空気抵抗、Magnus 力、不均一な地形が問題になるときは、この飛距離を真空の上限として扱い、より詳細なシミュレータと比較してください。
そのモデルを置き換えるのではありません。ブラウザツールは無料のままです。
活用例
物理の宿題と実験の確認
既知の速度・仰角・固定した g での地面からの打ち出しについて、学生が求めた水平飛距離を検証します。四十五度の最大や余角の組も含みます。
スポーツと弾道のおおまかな見積もり
より完全な飛行モデルで空気抵抗・回転・風を加える前に、ボール、やり、模型ロケットの真空飛距離の目安を素早く得ます。
ゲームとシミュレーションのパラメータ設定
理想的な重力のもとで目標距離に届く発射速度と角度を選び、その基準に対して物理サンドボックスで空気抵抗係数を調整します。
よくある質問
放物運動の飛距離計算機はどの公式を使いますか?
理想的な平地の恒等式 R = v² · sin(2θ) / g を使い、発射角は度からラジアンに変換します。発射高さと着地高さは一致している必要があります。崖からの投擲は対象外です。
なぜ発射角は 0 度から 90 度の間でなければならないのですか?
地面の高さから平らな地面への打ち出しでは、その閉区間の角度だけが意味のある前方軌道を生みます。
計算機は空気抵抗を含みますか?
いいえ。 運動は一定重力・空気抵抗なしの真空運動学です。実際の投射体はより短い距離を進みます。結果は上限の参照値としてお使いください。
速度、角度、重力にはどの単位を使えばよいですか?
速度は毎秒メートル、角度は水平から上向きの度、重力は毎秒毎秒メートルです。換算せずに単位を混ぜると、数学的には妥当でも物理的には無意味な飛距離になります。
同じ飛距離になる2つの角度はありますか?
あります。足して90°になる2つの角度は、理想的な条件では同じ距離に落ちます。見た目の違う2つの答えがどちらも正しいかを確かめるのに便利です。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/phys/range-projectile-motion \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"speed":20,"angle":45,"gravity":9.80665}'const res = await fetch("https://api.kit.forhosting.com/phys/range-projectile-motion", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"speed": 20,
"angle": 45,
"gravity": 9.80665
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/phys/range-projectile-motion",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"speed": 20,
"angle": 45,
"gravity": 9.80665
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/phys/range-projectile-motion", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"speed":20,"angle":45,"gravity":9.80665}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"speed":20,"angle":45,"gravity":9.80665}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/phys/range-projectile-motion", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"speed": 20,
"angle": 45,
"gravity": 9.80665
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "phys.range_projectile_motion",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
零度から九十度の閉区間の外の発射角は invalid_input で失敗し、課金されません。成功した API 呼び出しは公開基本料金 $0.002 を 1 回あたりに用います。
速度、角度、重力の入力の選び方
負の速度は発射の大きさが負になり得ないため invalid_input として拒否されます。その区間の外の値は折り返しや切り詰めや別幾何の捏造をせず、invalid_input で失敗します。同じ三つの欄が無料ブラウザフォームと API 本体を動かすので、スクリプトによる確認と手作業の確認が丸めや合法な角度で食い違うことはありません。
結果の読み方と宿題・パイプラインでの使い方
成功した API 要求は公開基本料金 $0.002 を 1 件あたりに用います。
技術的な質問
成功した呼び出しの料金はいくらですか。
ブラウザツールは無料です。API 要求は成功した呼び出し 1 回あたり $0.002 で前払いの KIT 残高を使います。無効な入力は課金されません。