円の一般形方程式
中心(3, −2)、半径5の円の一般形はx² + y² − 6x + 4y − 12 = 0です。中心と半径を入力すると、符号の間違いや2乗の付け忘れなしに3つの係数が分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- H
- 3
- K
- -2
- 抵抗(Ω)
- 5
- A
- -6
- B
- 4
- C
- -12
中心の座標 h と k、そして半径 r を送信すると、3 つの係数 A、B、C が決定的な方法で計算され、固定された小数桁数に丸められて返されます。小さな変換ですが、解析幾何学の宿題、CAD ツール、コンピューターグラフィックスのコード、円を展開された多項式の形で保存するあらゆるシステムで常に必要になるものです。1 回の呼び出しで 3 つの数値が返り、入力データは一切保存されません。同じコードがこのページのブラウザ上でも無料で動作するため、アカウントや鍵を用意しなくても、その場で結果を確認していただけます。
係数の計算方法と丸め方
実装は意図的に透明なものになっています。A は中心の x 座標の −2 倍、B は中心の y 座標の −2 倍、C は座標の二乗の和から半径の二乗を引いた値です。各結果は固定された小数桁数に四捨五入されます。
既定では 12 桁で、decimals オプションにより 0 まで調整できます。入力は計算の前に検証されます。中心の座標は有限の数値である必要があり、半径は厳密に正である必要があります。
半径 0 は一点を表し、負の半径は何も表さないからです。
一般形が実際に使われる場面
標準形は人が方程式を読むときに便利ですが、多くのシステムが保存・伝送するのは一般形です。円錐曲線ソルバー、最小二乗法による円のフィッティング、代数幾何ライブラリは、いずれも円を二次多項式の一種として扱い、中心と半径の組ではなく展開済みの係数を期待します。
コンピューターグラフィックスのパイプラインでは、直線や他の円との交差がそれらの係数の小さな線形代数の問題に帰着するため、円を一般形で保持することがあります。教科書や試験では両方向の変換が求められます。与えられた円を展開したり、与えられた係数で平方完成したりするので、信頼できる変換器は手計算の検算ツールとしても役立ちます。
プログラムからの利用者は通常、正規化のステップとしてこの機能を呼び出します。どんな形で円が来ても、保存前に一般形に変換することで、比較や重複排除が単純な係数の等値判定になります。
活用例
保存前に円を正規化する
中心・半径形式の円の定義を一般形の係数に変換し、幾何学データベースでの比較、重複排除、インデックス作成を単純な係数の等値チェックにします。
円錐曲線ソルバーへ入力する
交差、フィッティング、変換処理のために円を二次多項式として扱うライブラリへ、A、B、C をそのまま渡します。
解析幾何学の宿題を確認する
(x − h)² + (y − k)² = r² を手計算で展開し、得られた係数を 1 回の呼び出しで決定的な答えと照合します。
よくある質問
料金はいくらですか?
また、このページではブラウザ上で無料で実行できます。同じコードが両方の場所で動作します。
A、B、C とは正確には何ですか?
中心 (h, k)、半径 r の円の場合、A = −2h、B = −2k、C = h² + k² − r² です。
半径が 0 以下だと失敗するのはなぜですか?
半径 0 は円ではなく一点を表し、負の半径は幾何学的に意味を持ちません。
結果の精度を制御できますか?
はい。 decimals オプションで小数桁数を 0 から 12 の範囲で設定でき、四捨五入されます。既定値は 12 で、プラットフォーム間で出力がバイト単位で安定します。
一般形から中心と半径に戻すにはどうすればよいですか?
平方完成を使います。 h = −A/2、k = −B/2、r = √(h² + k² − C) です。逆方向はカタログ内の専用の円の方程式機能でカバーされています。
送信したデータは保存されますか?
いいえ。 数値は検証され、3 つの係数が計算されて応答が返された後、入力は直ちに破棄されます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/math/general-form-equation-circle \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"h":3,"k":-2,"r":5}'const res = await fetch("https://api.kit.forhosting.com/math/general-form-equation-circle", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"h": 3,
"k": -2,
"r": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/general-form-equation-circle",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"h": 3,
"k": -2,
"r": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/general-form-equation-circle", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"h":3,"k":-2,"r":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"h":3,"k":-2,"r":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/general-form-equation-circle", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"h": 3,
"k": -2,
"r": 5
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.general_form_equation_circle",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
円の一般形の方程式 x² + y² + Ax + By + C = 0 は、おなじみの標準形 (x − h)² + (y − k)² = r² を展開し、すべての項を片側に集めたときに得られる形です。この機能はその展開を自動で行います。
中心と半径から一つの多項式へ
平面上の円は、中心の x 座標と y 座標、そして半径の長さという 3 つの数で完全に記述できます。(x − h)² + (y − k)² = r² と書かれたこの記述は標準形、または中心・半径形と呼ばれ、幾何学的な情報を一目で読み取れる形です。二乗項の係数は常に 1 なので、答えに必要なのは 3 つの数だけです。2 つの平方を展開すると x² − 2hx + h² + y² − 2ky + k² = r² となり、すべてを左辺に移すと、A = −2h、B = −2k、C = h² + k² − r² として一般形 x² + y² + Ax + By + C = 0 が得られます。この変換は近似を一切伴わない純粋な代数操作ですが、手計算で行うと符号を間違えたり二乗を忘れたりする、まさに機械的な作業の典型です。このエンドポイントは、任意の有限の中心と任意の正の半径に対してその展開を実行し、3 つの係数をプレーンな JSON の数値として返します。そのため、文書、描画ルーチン、後段のソルバーへ追加の解析なしに渡すことができます。
係数の計算方法と丸め方
正でない半径、欠落したフィールド、数値以外の値を指定すると、問題のフィールド名を示すメッセージ付きの invalid_input エラーが返り、失敗したリクエストは課金されません。
一般形が実際に使われる場面
1 リクエスト $0.002 なのでパイプラインに組み込んでも十分に安く、ブラウザ版は完全に無料です。