3Dの2点間の距離
空間内の2点を入力すると、まっすぐ結んだ距離が分かります。(0, 0, 0)から(3, 4, 12)まではちょうど13で、軸ごとの差も表示されるので、z方向の差を忘れることがありません。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- X1
- 0
- Y1
- 0
- Z1
- 0
- X2
- 3
- Y2
- 4
- Z2
- 12
- 距離
- 13
- Dx
- 3
- Dy
- 4
- Dz
- 12
三次元の直交座標系にある2点の直線距離は、ユークリッド距離、すなわち x・y・z の差の二乗和の平方根です。
ユークリッド公式が3D空間の距離を測るしくみ
第1点を (x1, y1, z1)、第2点を (x2, y2, z2) とラベル付けします。三次元における古典的なピタゴラスの恒等式は、それらを結ぶ線分の長さが (x2 マイナス x1) の二乗に (y2 マイナス y1) の二乗と (z2 マイナス z1) の二乗を加えたものの平方根であると述べます。
この式は常に非負で、2点が一致するときちょうど零となり、端点を入れ替えても対称です。教室でよく使う確認例には、3・4・12 単位の直方体の辺から距離13を得るものや、(0, 0, 0) から (1, 1, 1) への単位立方体の空間対角線から3の平方根を得るものがあります。
式は減算・乗算・加算と1回の平方根だけを使うため、決定的で O(1) であり、三角関数ライブラリや反復ソルバを必要としません。平面だけの長さが必要なら、真の3D計算という検索意図をぼかすゼロの z を無理に入れるのではなく、専用の2D距離ツールを使ってください。
実務で3D点距離が現れる場面
高校・大学の空間幾何では空間の2点間距離を絶えず求めます。厳密な数値検査付きの信頼できる計算機は採点を速め、3つの差分すべてを二乗し忘れる、あるいは z 項を丸ごと落とす表計算ミスを減らします。
ゲーム・グラフィックス・CAD の教材はスプライトや節点、制御点をワールド座標の三つ組として持つことが多く、距離の答えは衝突半径、スナップ閾値、経路長の見積りに使え、計算幾何のフルスタックは不要です。
局所直交枠ですでに姿勢を表すロボティクス、運動計画、センサーのパイプラインは、報告や制御の前に2つのランドマークの直線離隔が必要で、共有の数値オラクルがあれば現場メモ・シミュレータ・事務スクリプトを同じユークリッド経路に揃えられます。
データと分析のチームは文書例や合成ベンチマーク用の決定的幾何フィクスチャが必要になることがあり、6座標・3差分・method 文字列をエコーすることで自己説明的になります。後からマンハッタン距離、平面2Dユークリッド長、地球上の大円距離が必要なら、この空間2点ランディングを過負荷にせず、別の検索意図として扱ってください。
活用例
宿題・試験の検算
2つの3D点の直線距離を求め、非数値の座標は明確なエラーで拒否します。
ゲーム・CAD・ロボティクスの補助
2つの3D座標三つ組をスナップ半径・衝突プロキシ・経路区間向けのユークリッド長に変換します。
局所枠の測量・センサー区間
空間上の2つの直交端点から、報告や運動制御の前に区間長を求めます。
よくある質問
この計算機はどの公式を使いますか?
3Dユークリッド公式です。distance = √((x2 − x1)² + (y2 − y1)² + (z2 − z1)²)。
点の順序は重要ですか?
いいえ。 距離は対称です。2点を入れ替えても同じ非負の長さになり、dx, dy, dz の符号だけが反転します。
2D距離計算機とは違いますか?
はい。 本ツールは各点の x, y, z の計6座標を要求し、空間の長さを測ります。平面のみの問題は専用の2Dユークリッドツールを使ってください。
座標に数値以外を入れるとどうなりますか?
空欄や文字、無限大などの値は受け付けず、分かりやすいエラーで知らせます。計算できたように見える意味のない数値を返すことはありません。
単位立方体の対角線の長さはいくつですか?
(0, 0, 0)から(1, 1, 1)までの距離は3の平方根です。3つの差をすべて2乗して足せているかを確かめる、よい練習になります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/geom/distance-3d \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"x1":0,"y1":0,"z1":0,"x2":3,"y2":4,"z2":12}'const res = await fetch("https://api.kit.forhosting.com/geom/distance-3d", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"x1": 0,
"y1": 0,
"z1": 0,
"x2": 3,
"y2": 4,
"z2": 12
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/distance-3d",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"x1": 0,
"y1": 0,
"z1": 0,
"x2": 3,
"y2": 4,
"z2": 12
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/distance-3d", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"x1":0,"y1":0,"z1":0,"x2":3,"y2":4,"z2":12}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"x1":0,"y1":0,"z1":0,"x2":3,"y2":4,"z2":12}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/distance-3d", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"x1": 0,
"y1": 0,
"z1": 0,
"x2": 3,
"y2": 4,
"z2": 12
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.distance_3d",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
本計算機は x1, y1, z1, x2, y2, z2 を有限の数値として受け取り、各座標を検証し、非負の距離と正規化した点、差分 dx, dy, dz、および method タグ euclidean_3d を返します。空間幾何の宿題を確認する学生、エンティティを3D位置として保持するゲームや CAD のツール、ワールド座標で離隔を測るロボティクスやセンサーのパイプライン、決定的な幾何フィクスチャを必要とするテスト作者は、無料のブラウザツールと有料 API のどちらでも同じ純粋な結果を得られます。欠落フィールド、空文字、非数値テキスト、NaN、Infinity は、成功した解決のように見える沈黙の NaN ではなく、明確な invalid_input エラーで拒否されます。ネットワーク呼び出しもなく、乱数サンプリングもなく、入力した6つの数に対する通常の IEEE-754 演算以外の浮動小数点の意外性もありません。
ユークリッド公式が3D空間の距離を測るしくみ
座標が大きいと二乗時に IEEE-754 の double 範囲を超えることがあり、中間和が有限でない場合は JSON で Infinity を返す代わりに明確なオーバーフローメッセージで失敗します。この閉じた経路は、解析幾何の教科書、空間幾何の入門、計算幾何の講義が空間の2点間距離を扱うやり方と一致し、単位換算や地図投影を同じ呼び出しに混ぜることなく、自動採点とパイプラインを手計算と揃えます。
送信する内容と返ってくる結果
必須の有限数値を6つ指定します。第1点の x1, y1, z1 と第2点の x2, y2, z2 です。解析後、サービスは dx を x2 マイナス x1、dy を y2 マイナス y1、dz を z2 マイナス z1 として計算し、dx・dy・dz の二乗和の平方根を取り、距離が有限数であることを確認します。手早い確認には無料ブラウザツールを、一括評価には同一契約をスクリプトから呼び出してください。数値ゲートを言語ごとに再実装する必要はありません。フォームラベルを短く保てるよう、短い別名 ax, ay, az, bx, by, bz および x_a から z_b も受け付けます。欠落フィールド、空文字、非数値テキスト、NaN、Infinity は invalid_input で拒否され、課金されません。成功時の JSON 応答は安定した直列化のために丸めた distance を返し、6つの正規化座標をエコーし、dx, dy, dz を含め、ログや教材 UI が計量を記録できるよう method を文字列 euclidean_3d に設定します。例: 0,0,0,3,4,12 は距離13、0,0,0,1,1,1 は丸めた3の平方根、非数値の z2 はそのフィールド名付きで失敗します。契約は単体テスト、宿題チェッカー、3D点ペアを長さへ写すバッチパイプラインに適した安定 JSON です。API 料金は成功1件あたり公開ベースの $0.002 です。
実務で3D点距離が現れる場面
本能力は純粋な parse エンジンのため、検証失敗は残高を消費せず、成功実行は1件あたり $0.002 のままです。
技術的な質問
座標が数値でない場合はどうなりますか?
リクエストは invalid_input で失敗します。欠落フィールド、空文字、非数値テキスト、NaN、Infinity はすべて拒否されます。
料金はいくらですか?
ブラウザツールは無料でローカル実行です。API リクエストは前払い KIT 残高を成功1件あたり $0.002 で使用し、無効入力は課金されません。