線分の内分・外分計算機
線分を指定した比に分ける点が分かります。A(2, 3)とB(8, 7)を1:2に内分する点は、AからBへ3分の1進んだ位置で、xは4、yは4と3分の1です。外分にも対応しています。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- X1
- 2
- Y1
- 3
- X2
- 8
- Y2
- 7
- M
- 1
- N
- 2
- X
- 4
- Y
- 4.3333333333
線分の内分・外分公式は、解析幾何の定番の問いに対する閉形式の答えです。端点 A(x1, y1) と B(x2, y2) が与えられたとき、線分 AB を比 m 対 n に分ける点 P はどこにあるか。内分では P は A と B の間にあり、外分では A と B を通る直線上にありますが線分の外側にあります。
内分・外分公式が分割点を求める仕組み
端点 A(x1, y1) と B(x2, y2)、および正または符号付きの比 m:n を置きます。内分では P の座標は x が (m 倍の x2 に n 倍の x1 を加えたもの) を (m に n を加えたもの) で割った値、y も同様に (m 倍の y2 に n 倍の y1 を加えたもの) を (m に n を加えたもの) で割った値です。
幾何的には重み m は B 側へ、重み n は A 側へ引くため、比 1 対 1 は中点、比 1 対 2 は A から B へ向かって三分の一の位置に P を置きます。外分では分子の符号が反転し、分母は m マイナス n になります。
すなわち x は (m 倍の x2 から n 倍の x1 を引いたもの) を (m マイナス n) で割った値、y も同様です。外分点は近い方の端点の先へ延長した直線 AB 上にあります。教室での定番チェックは A が (2, 3)、B が (8, 7)、m:n が 1 対 2 の外分で、端点の間ではなく線分の外側に落ちます。
内分公式は m と n の和がちょうど零のとき不定で、その分母が消えるためです。外分公式も m が n と等しいとき同様に不定です。どちらの経路も加減乗と一度の除算だけなので、結果は決定的で O(1)、三角関数や反復ライブラリを使いません。
送信する内容と返ってくる内容
必須の有限数を6つ指定します。端点 A の x1 と y1、端点 B の x2 と y2、比の部分 m と n です。任意で division を internal または external に設定でき、省略時はサービスが internal を既定にします。
解析後、サービスは内分または外分の公式を選び、分母が非零であることを確認して点を返します。定番チェック:A(2, 3)、B(8, 7)、m が 1、n が 2 の内分は P(4, 13/3);同じ端点で m が 1、n が −1 の内分は m と n の和が零のため失敗;外分で m と n が等しいと m マイナス n が零のため失敗。
素早い確認には無料ブラウザツールを、各言語で零分母ゲートを再実装せずに一括評価が必要なときはスクリプトから同一契約を呼び出してください。
実務で内分・外分点が現れる場面
高校・大学の解析幾何では、描いた線分を与えられた比で分ける点を求める課題が頻出します。m と n の和・差を厳しく検査する信頼できる計算機は採点を速め、内分と外分を取り違えたり零除算を許したりする表計算の誤りを減らします。
すでに局所直交座標へ投影している製図・測量・簡易 GIS では、基線に沿った重み付き測点—例えば B 側に2部、A 側に1部の杭—を報告や杭打ちの前に求める必要があり、共有の数値オラクルが現場メモと事務所スクリプトを同じ閉形式に揃えます。
ゲーム、グラフィックス、CAD の教材では、制御点やジョイント、スポーンマーカーを辺に沿った内分点として置くことが多く、m:n が 1 対 1 の内分公式はそのまま分割や衝突補助で使う中点です。
データと分析のチームは、文書例や合成ベンチマーク用に決定的な幾何フィクスチャを要することがあり、端点・比・分割モード・method 文字列を返すことで自己説明的になります。のちに 3D の分割点、球面測地線、直線線分を超えるパラメトリック曲線が必要なら、この座標の内分・外分ランディングを過負荷にせず、別の検索意図として扱ってください。
活用例
宿題・試験の照合
AB を比 m:n に分ける点を求め、分母が零になる比は Infinity ではなく明確なエラーで拒否します。
基線上の測量測点
投影済みの2端点と現場の比から、杭打ちや報告の前に平面座標の測点を復元します。
よくある質問
この計算機はどの公式を使いますか?
内分: x = (m x2 + n x1)/(m+n), y = (m y2 + n y1)/(m+n)。外分: x = (m x2 − n x1)/(m−n), y = (m y2 − n y1)/(m−n)。
既定モードは内分ですか、外分ですか?
内分です。 division を省略するか "internal" にすると A と B の間の点、"external" にすると線分の外側の点になります。
外分とは何ですか?
AとBを通る直線の上で、線分の外側にある点で分けることです。公式は足し算の代わりに引き算を使い、mからnを引いた値で割るため、mとnが等しいと答えがありません。
比が1:1のとき点はどこにありますか?
線分のちょうど真ん中です。1:1の内分点は中点で、図形の辺を分割するときなどにも使われます。
mとnの和がゼロになるとどうなりますか?
内分では答えを返さず、無限大の代わりにはっきりお知らせします。外分でも、mとnが等しいときは同じように扱います。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/geom/section-formula \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"x1":2,"y1":3,"x2":8,"y2":7,"m":1,"n":2}'const res = await fetch("https://api.kit.forhosting.com/geom/section-formula", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"x1": 2,
"y1": 3,
"x2": 8,
"y2": 7,
"m": 1,
"n": 2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/section-formula",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"x1": 2,
"y1": 3,
"x2": 8,
"y2": 7,
"m": 1,
"n": 2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/section-formula", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"x1":2,"y1":3,"x2":8,"y2":7,"m":1,"n":2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"x1":2,"y1":3,"x2":8,"y2":7,"m":1,"n":2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/section-formula", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"x1": 2,
"y1": 3,
"x2": 8,
"y2": 7,
"m": 1,
"n": 2
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.section_formula",
"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, x2, y2, m, n の6つの数値と、任意の分割モード(既定は内分、または外分)を受け取り、すべてが有限で分母が零でないことを検証し、P の座標と正規化された入力、および method タグ section_formula を返します。宿題を確認する学生、決定的な採点器を作る教員、辺に沿った重み付き点を必要とする CAD やゲームツール、局所平面上の測量スクリプトは、無料ブラウザツールと有料 API のどちらでも同じ純粋な結果を得ます。内分で m と n の和が零、または外分で m が n に等しいリクエストは Infinity を返す代わりに明確な invalid_input エラーで失敗します。ネットワーク呼び出しもなく、乱数サンプリングもなく、ご指定の数に対する通常の IEEE-754 演算を超える浮動小数点の驚きもありません。
内分・外分公式が分割点を求める仕組み
本サービスはその場合を invalid_input で拒否し、和が零の規則を明示するので、フォーム側で比を直せます。大きな座標や極端な比でも IEEE-754 の double 範囲を超えることがあり、計算点が非有限なら Infinity を JSON に載せる代わりに明確なオーバーフローメッセージで失敗します。
送信する内容と返ってくる内容
短い別名 ax, ay, bx, by, ratio_m, ratio_n, mode, type も受け付け、コンパクトなフォームラベルを単一ハンドラに揃えられます。欠落フィールド、空文字、非数値テキスト、NaN、Infinity は invalid_input で拒否され、課金されません。成功時の JSON 応答には安定した直列化のための丸め済み x と y、正規化された6つの座標と比の部分、解決済みモードの division、アルゴリズムを記録・教材 UI が示せるよう method に文字列 section_formula が含まれます。契約は単体テスト、宿題チェッカー、辺の比を点に写す一括パイプラインに適した安定 JSON です。API 料金は成功1件あたり公開ベースの $0.002 です。
実務で内分・外分点が現れる場面
本機能は純粋な解析エンジンのため、検証失敗は残高を消費せず、成功実行は1件あたり $0.002 のままです。
連携の活用例
ゲーム・CAD の辺ヘルパー
ブラウザと API で同じ内分公式を使い、辺上に制御点やジョイントを配置します。
技術的な質問
内分で m + n が零のときはどうなりますか?
リクエストは invalid_input で失敗します。比の部分の和が零のとき内分は定義されません。
外分で m が n と等しい場合は?
m − n が零(比の部分が等しい)とき外分は invalid_input で失敗します。分母が消えるためです。
料金はいくらですか?
ブラウザツールは無料でローカル実行です。API は前払い KIT 残高を成功1件あたり $0.002 で使い、無効な入力は課金されません。