外部点からの接線長
円の外の点から接点までの接線の長さを求めます。半径3、中心からの距離5なら接線の長さは4です。円の内側や円周上の点は受け付けません。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 半径
- 3
- 距離
- 5
- 接線長
- 4
- 接線の長さの2乗
- 16
円の外側にある点から円に接する直線を引くと、その外部点から接点までの線分が接線分となります。その長さは円の半径と、点が中心からどれだけ離れているかだけに依存します。すなわち L は d の二乗から r の二乗を引いたものの平方根です。学習者はユークリッド幾何、座標幾何、および与えられた外部点から引いた接線の長さを問う試験問題でこの恒等式に出会います。本計算機は半径 r と中心から点までの距離 d を受け取り、短い公式文字列付きで接線長を返し、実接線が存在しない内部点を拒否します。
接線長の公式が意味すること
中心 O・半径 r の円と、距離 OP が d で d が r より厳密に大きい外部点 P を考えます。P から円に接する合同な接線を二本引き、接点を T および T ダッシュとします。一方の接点 T に注目します。
半径 OT は T における接線に直交するため、三角形 OTP は T で直角になります。ピタゴラスの定理より OT の二乗と PT の二乗の和が OP の二乗に等しく、すなわち r の二乗と L の二乗の和が d の二乗になります。接線分について解くと L は d の二乗から r の二乗を引いたものの平方根となります。
この一つの根号が計算のすべてであり、反復的な根の探索も角度表も不要で、P が円の周りでどの角度にあっても依存せず、動径距離だけが効きます。d が r より小さいとき点は円板の内部にあり、根号の中が負になって P から円への実接線は存在しないため、ハンドラは NaN や複素長さではなく明確なメッセージで失敗します。
円が退化しないよう半径は正でなければなりません。これらの検査は定理の幾何学的前提を写し、クライアント側での静かな虚数結果を防ぎます。
入力契約・応答形状・エラー動作
radius は正の円半径 r、distance は中心から外部点までの正の距離 d です。radius が厳密に正でなければ拒否されます。distance が厳密に正でなければ拒否されます。
distance が radius より小さいと点は円の内部にあり、内部点では接線長が定義されないというメッセージでタスクが失敗します。distance が radius と等しいと点は円上にあり、外部点が必要なためタスクが失敗します。これらの検証失敗はいずれも前払い残高を消費しません。
教科書的な値は期待どおりに動きます。半径三・距離五なら接線長は四であり、三・四・五は半径と接線を脚、中心から点への線分を斜辺とするピタゴラス数です。O・P・T の略図が必要なら数値結果を独自の図と組み合わせてください。
接線の長さが役立つ場面
教室や学習支援プラットフォームでは、任意の正の r と d について L が d の二乗マイナス r の二乗の平方根であることを計算ミスなく確認するために接線長計算機を使います。試験ジェネレータや LMS 自動採点には、内部点を無効として扱い長さをでっち上げない決定論的オラクルが必要です。
製図や CAD の補助では、座標を完全に置く前に中心距離と半径だけが分かる外部点からの接線の自由長が必要になることがあります。検証失敗は残高を消費しません。
活用例
授業と宿題の確認
学習者に半径 r と中心距離 d を提出させ、外部点について教科書のピタゴラス確認に対し L = √(d²−r²) を検証させます。
CAD と幾何ノートブック
計算幾何の完全なライブラリを取り込まず、スクリプトで中心距離と半径から接線分の自由長を計算します。
よくある質問
外部点からの接線長はどのように計算しますか?
正の有限数 radius (r) と distance (d) を d > r で送ってください。
点が円上にある場合 (d = r) はどうですか?
外部点には d が r より厳密に大きいことが必要で、円上の点は正の外部接線分とは扱いません。
答えは点が円の周りでどの角度にあるかに依存しますか?
いいえ。 動径距離 d と半径 r だけが重要です。半径 d の同じ同心円上の点はすべて同じ接線長を共有します。
外の点から引ける接線は何本で、長さは同じですか?
円の両側に1本ずつ、合わせて2本引けて、長さはまったく同じです。結果はその共通の長さなので、計算は1回で済みます。
点が円の内側にあるとどうなりますか?
円の内側の点からは接線が引けないため、計算を受け付けず、点が内側にあることを知らせます。中心からの距離は半径より大きくしてください。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/geom/tangent-length-point \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"radius":3,"distance":5}'const res = await fetch("https://api.kit.forhosting.com/geom/tangent-length-point", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"radius": 3,
"distance": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/tangent-length-point",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"radius": 3,
"distance": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/tangent-length-point", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"radius":3,"distance":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"radius":3,"distance":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/tangent-length-point", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"radius": 3,
"distance": 5
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.tangent_length_point",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
接線長の公式が意味すること
d が r に等しいとき点は円周上にあり、形式的な根号は零になりますが、通常の学校的意味での外部接線分は存在しないため、本機能は d が r より大きいことを要求し、円上の点には invalid_input を返します。
入力契約・応答形状・エラー動作
必須の有限数を二つ含む JSON 本体を POST してください。各フィールドは JSON 数または数値文字列として受け取られ、欠落・空文字列・非有限値はフィールド名付きの invalid_input で失敗します。本エンドポイントは長さのみを計算し、接点の座標は出力しません。
接線長 API が役立つ場面
実装は純粋な parse のティア A であるため、成功した呼び出しはモデルトークンも外向きネットワークもなく公開ベース価格 $0.002 です。リクエストを小さく保ち、テストで丸めた tangent_length を固定すれば、自前の幾何エンジンを立てずに宿題・LMS プラグイン・エッジワーカー向けの再現可能な長さが得られます。
連携の活用例
試験・LMS の自動採点
内部点 (d < r) と円上の点 (d = r) を invalid_input で拒否する決定論的オラクルで接線長問題を採点します。
技術的な質問
点が円の内部にある場合はどうなりますか?
distance が radius より小さいとタスクは invalid_input で失敗します。内部点から実接線は存在せず、その失敗は課金されません。
接線長計算機の料金はいくらですか?
ブラウザのツールは無料です。API リクエストは成功した呼び出しごとに前払い KIT 残高から $0.002 で課金され、無効な入力は課金されません。