スチュワートの定理計算機
三角形の頂点から対辺上の任意の点までの線分の長さを、3辺と底辺の2つの区間から求めます。辺7、5、6で底辺を3と4に分けると4.391550328268です。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- A
- 7
- B
- 5
- C
- 6
- M
- 3
- N
- 4
- チェバ線
- 4.3915503283
- チェバ線の二乗
- 19.2857142857
スチュワートの定理は、三角形の三辺の長さと、対辺上に足をもつチェビアンの長さおよびその足が作る二つの線分の長さを結びつける古典的な恒等式です。辺が七・五・六で底辺が三と四に分かれている課題では、対頂点から内部線分が必要になります。外周を巻き尺で測り分割点を記した測量でも、縮尺図なしに同じ長さが要ります。三角形メッシュと辺上の足を保持するゲームや CAD パイプラインでも、衝突や UV 配置のための決定論的な数値が求められます。本機能は標準ラベル(分割される底辺が a、他の二辺が b と c、底辺線分が m と n で m プラス n が a)を受け取り、三角形の不等式と分割の整合性を検査し、閉形式の平方根から正のチェビアン長を返します。
スチュワートの定理の内容とチェビアンのラベル付け
スチュワートの定理は、一頂点から対辺上の一点へチェビアンを引いた任意の三角形に適用されます。三角形 ABC を、辺 a が BC、辺 b が AC、辺 c が AB となるようラベル付けしてください。A から BC 上の点 D へチェビアンを引き、BD を m、DC を n、チェビアン AD を d とします。
分割される辺は a が m プラス n に等しい必要があります。これは任意の算術的飾りではなく幾何的契約の一部で、m と n は文字どおり a の二つの部分だからです。このラベルでは、スチュワートの関係は b の二乗に m を掛けたものと c の二乗に n を掛けたものの和が、a に d の二乗と m と n の積の和を掛けたものに等しいと述べます。
未知のチェビアン長を解くと、d の二乗は m に b の二乗を掛けたものと n に c の二乗を掛けたものの和を a で割り、さらに m と n の積を引いたものとなり、d はその非負の平方根です。特別な場合は既知の結果に帰着します。m と n がともに a の半分ならチェビアンは中線で、公式は中線長の公式に縮退します。
直角への高さであれば、底辺の半分と高さや二つの直角三角形でのピタゴラスと突き合わせられます。D が頂点のときは設定が退化し拒否されます。各手順は五つの正のスカラーに対する初等演算と一つの平方根だけなので、反復もサンプリングも壁時計への依存もなく、入力契約に角は不要です。
実務のヒント、限界、検算例、関連検索
単位は渡すもの(メートル、フィート、ゲーム単位など)でよく、a, b, c, m, n が同一単位を共有すれば十分です。指導では a が七、b が五、c が六、m が三、n が四のような古典的な整数分割を好んでください。m プラス n が a を満たし、スチュワートの被開平数から手計算できるきれいな正のチェビアンが得られます。
三・四・五の直角三角形での中線検算も組み合わせてください。a が五、b が四、c が三、m と n が二点五なら、公式は斜辺への中線の既知長に縮みます。m プラス n が a と等しくない入力(例:m が二、n が二、a が七)で意図的にエラー経路を踏ませ、平方根の前に不整合分割が拒否されることを示せます。
本ランディングはスチュワートの定理計算機や辺からのチェビアン長ツールを探す方を対象とします。角追いの SAS ソルバでもヘロンの面積公式だけでもありません。意図が面積や SAS なら専用機能を使ってください。
三つの外辺と二つの底辺片が測られている、または与えられており、高さを作図せず内部チェビアンが必要なときは Stewart を優先してください。
往復検算は簡単です。 解いたあと m プラス n が a であることを確認し、閉形式から d の二乗を再計算し、b の二乗に m、c の二乗に n を掛けた和が a に d の二乗と m n の積の和を掛けたものと浮動小数点許容内で一致することを確かめてください。
活用例
外周計測と印付きの足からの測量・配置
巻き尺で測った三角形の辺と一辺上の分割印から、完全な縮尺図なしに対頂点までの内部距離を得ます。
ゲーム・CAD・メッシュ向けの内部線分長
三角形面が三つの辺長と一辺上のパラメータ化された足を持つとき、チェビアンまたは中線の長さを計算します。
よくある質問
スチュワートの定理とは何ですか?
スチュワートの定理は三角形の辺 a, b, c と、辺 a を線分 m と n に分ける長さ d のチェビアンを関係づけます。b²m + c²n = a(d² + mn)。解けば d = sqrt((m b² + n c²)/a − mn) です。
不整合な分割とは何を意味しますか?
底辺の線分は m + n = a を満たさなければなりません。m と n は辺 a の二つの部分だからです。
m と n は b と c に対してどうラベル付けされますか?
辺 a = BC、b = AC、c = AB、足 D が BC 上のとき、m = BD(辺 c の側)、n = DC(辺 b の側)です。b と c を入れ替えずに m と n だけ入れ替えると誤った長さになります。
中線や高さは特別に計算されますか?
中線は m = n = a/2 の特別な場合です。その線分を入れれば同じ公式から中線長が得られます。高さは足が真の垂線の足であるときだけ有効で、その足に正しい m と n を与える必要があります。
スチュワートの定理計算機は無料ですか?
ブラウザツールは無料でローカル実行されます。失敗タスクは課金されません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/geom/stewart-theorem \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":7,"b":5,"c":6,"m":3,"n":4}'const res = await fetch("https://api.kit.forhosting.com/geom/stewart-theorem", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 7,
"b": 5,
"c": 6,
"m": 3,
"n": 4
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/stewart-theorem",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 7,
"b": 5,
"c": 6,
"m": 3,
"n": 4
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/stewart-theorem", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":7,"b":5,"c":6,"m":3,"n":4}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":7,"b":5,"c":6,"m":3,"n":4}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/stewart-theorem", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"a": 7,
"b": 5,
"c": 6,
"m": 3,
"n": 4
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.stewart_theorem",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
結果は純粋な JSON で、計算機代数システムも乱数シードも使わず、無料のブラウザ実行と前払い API 経路で同一の同型 solve 関数を共有します。
スチュワートの定理の内容とチェビアンのラベル付け
被開平数が明らかに負なら入力は整合した図形をなさず、虚数長ではなく invalid_input を返します。
入力契約、応答の形、分割が不整合なとき
決定的な整合性規則は、浮動小数点の相対許容の中で m プラス n が a に等しいことです。三辺は厳格な三角形の不等式も満たさなければなりません。a プラス b が c より大きく、a プラス c が b より大きく、b プラス c が a より大きいことです。必須の正の有限数を五つ含む JSON 本体を送ってください。フィールド a は分割される底辺 BC の長さで、別名 side_a と base を受け付けます。フィールド b は辺 AC で、別名 side_b は同じ意味です。フィールド c は辺 AB で、side_c を受け付けます。フィールド m は底辺線分 BD で、segment_m と bd を受け付けます。フィールド n は底辺線分 DC で、segment_n と dc を受け付けます。和が異なれば足は主張された長さの底辺上になく、ハンドラは分割が不整合であるというメッセージ付きで invalid_input を投げます。成功時の応答は a, b, c, m, n をエコーし、cevian(長さ d)、cevian_squared(平方根前の被開平数)、method を stewart とし、スチュワートの関係・d の閉形式・分割恒等式 a が m プラス n であることを記した短い formula ブロックを付けます。必須欠落、非有限または非正の長さ、公開限界外、三角形の不等式の破綻、m プラス n と a の不整合、負の被開平数などの検証失敗は invalid_input を返し課金されません。料金は成功したリクエストごとに定額 $0.002 で単位は item です。
実務のヒント、限界、検算例、関連検索
二乗の中間積が Worker とブラウザ上の IEEE 倍精度で有限に保たれるよう、すべての長さを公開された正の範囲(最大一兆)に収めてください。API は単位変換を行いません。公式は辺と線分だけを要するので、学習者は小さな整数で b の二乗に m を、c の二乗に n を手で展開し、API と行ごとに照合できます。invalid_input を返す失敗タスクは前払い残高を消費しないため、契約を学ぶ途中の不一致分割の探索スクリプトも安価に保てます。
連携の活用例
スチュワートとチェビアンの宿題・試験チェック
学習者に辺 a, b, c と底辺線分 m, n を与え、手計算のチェビアン長を決定論的な API または無料ブラウザ結果と照合します。