直線の交点計算
直線 y=2x + 1 と y=−x + 4 は点 (1, 3) で交わります。2本の直線を傾き切片形か一般形で入力すると交点が分かり、平行や同じ直線のときはその旨を示します。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 形式
- Slope intercept
- M1
- 2
- B1
- 1
- M2
- -1
- B2
- 4
- X
- 1
- Y
- 3
この直線の交点計算ツールは、デカルト平面上で2つの直線が交わる唯一の点を求めます。方程式が比例している場合、直線は一致しており、直線上のすべての点が交点になります。この契約は単一の唯一の点を約束しているため、これも拒否されます。結果は決定的な浮動小数点算術であり、ランダムサンプリングもネットワーク呼び出しもありません。
2直線の交点求解が学習・設計・コードで役立つ場面
学生は、2変数の連立方程式が導入されるとき、早い段階で連立一次方程式に出会います。教科書は2つの傾き切片形の直線を与えて交点を尋ねたり、費用と数量に関する文章題から標準形の制約を提示したりすることがあります。この計算ツールは、監査のために方程式を再度述べながら座標を一度で返します。
教師は、混在した形式のペアについてxとyを列挙し、空白やサイレントな無限大を印字するのではなく平行や一致する入力を拒否する模範解答をあらかじめ生成できます。建築家、測量士、ゲームレベルのデザイナーは、2つの壁、道路、経路のセグメントが無限の直線として延長された場合にどこで交わるかをしばしば必要とします。
係数のペアを、手動の電卓や記憶違いの行列式なしに点に変換することは、レイアウトの間違いを防ぎます。開発者は同じ契約をスクリプトから呼び出し、幾何学ライブラリの決定的なテストベクターの種を作ったり、指導ツールで線形連立方程式を実演したり、正確な2直線の交点を要求するプログラミング課題の条件を満たしたりします。
このページでの計算はすべてブラウザ内で完結します。まず2点からmが必要でその後フィットした直線の交点が必要なときは傾き計算ツールと、座標が混在した単位で届くときは単位換算ツールと、そして数値と図が一致し続けるよう学生に2つの直線と印された交差点を見せるグラフのメモと組み合わせてご利用ください。
活用例
レイアウト・地図・経路の交差
CADのスケッチやゲームの幾何学のために、壁・道路・ウェイポイントの直線の方程式を、無限の直線が交わる座標に変換します。
決定的な幾何学フィクスチャ
手作りのクラメールの算術なしに、ユニットテスト、コンテストのバリデーター、CIアサーション向けに再現可能な交点を生成できます。
よくある質問
交点はどう計算されますか?
傾き切片形では、x=(b2-b1)/(m1-m2)、y=m1x+b1です。標準形では、D=a1b2-a2b1、x=(b1c2-b2c1)/D、y=(c1a2-c2a1)/Dです。
直線が平行な場合はどうなりますか?
傾きが等しい(傾き切片形)、または係数の行列式がゼロで完全な比例がない(標準形)場合、唯一の交点は存在しません。
2つの式が同じ直線を表している場合はどうなりますか?
式どうしが比例していると2本は重なり、すべての点が交点になります。結果は1つの点を示す約束なので、この場合も理由を添えて受け付けません。
垂直な直線はどう入力しますか?
一般形を使ってください。垂直な直線には傾きがなく、傾き切片形では書けません。一般形で y の係数をゼロにすれば、2本の直線の行列式から交点が求まります。
結果の小数点以下の桁数は選べますか?
選べます。初期設定は10桁で、0から15桁の間で指定できます。桁数は表示を丸めるだけで、交点の求め方そのものは変わりません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/geom/line-intersection \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"form":"slope_intercept","format":"slope_intercept"}'const res = await fetch("https://api.kit.forhosting.com/geom/line-intersection", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"form": "slope_intercept",
"format": "slope_intercept"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/line-intersection",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"form": "slope_intercept",
"format": "slope_intercept"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/line-intersection", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"form":"slope_intercept","format":"slope_intercept"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"form":"slope_intercept","format":"slope_intercept"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/line-intersection", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"form": "slope_intercept",
"format": "slope_intercept"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.line_intersection",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
各直線を傾き切片形y=mx+b、または標準形ax+by+c=0で入力すると、エンジンは2×2の連立一次方程式を解き、使用した方程式とともに交点の座標を返します。直線が同じ傾きで異なる切片を持つ場合、それらは平行であり決して交わらないため、ハンドラーは点を発明したり無限大を出力したりするのではなくinvalid_inputを返します。代数の宿題、グラフのチェック、CADのスケッチにはブラウザで無料にご利用いただき、スクリプト、採点用のフィクスチャ、教育デモの中で再現可能な交点座標が必要な場合は、成功したリクエストごとに$0.002のAPIをご利用ください。
直線の交点が意味すること、そしてレスポンスの内容
解析幾何学では、平面上の平行でない2つの異なる直線はちょうど1点で交わります。傾き切片形は各直線をy=mx+bと書き、傾きmはxに対するyの一定の変化率であり、bは直線が縦軸を横切るy切片です。2つの式を等しく置くとm1x+b1=m2x+b2が得られ、これを整理するとx=(b2-b1)/(m1-m2)になり、その後yはどちらかの直線の式から従います。2点を通る1本の直線の傾きのみが必要な場合は、専用の傾き計算ツールをご利用ください。ここでの検索意図は具体的に2つの完全な直線の方程式の交点、または正直なエラーです。標準形はax+by+c=0と書き、直線が垂直であるとき、あるいは係数が一般的な線形制約から届くときに好まれます。唯一の解は、行列式D=a1b2-a2b1を持つ連立方程式a1x+b1y=-c1とa2x+b2y=-c2に対するクラメールの規則によって得られます。この計算ツールは、使用した形式、係数フィールドと短い方程式の文字列を持つ2つの直線、フラットなxとyフィールドおよびpointオブジェクトの両方としてのintersection、成功時にはparallelがfalse、coincidentがfalse、uniqueがtrueというフラグ、そして標準形については求解に使われた行列式を返します。この契約は意図的に厳格です。係数の欠落、非有限の値、縮退したゼロの行、平行なペア、一致するペアは、いずれも失敗した条件を名指しするメッセージとともにinvalid_inputを発生させます。
係数の読み取り方法と交点の計算方法
計算は基本的なものです。傾き切片では、m1とm2が微小な相対的イプシロン内で等しい場合、直線は切片が一致するかどうかに応じて平行または一致であり、そうでなければxは(b2-b1)/(m1-m2)、yはm1×x+b1です。標準形では、aとbのペアがともにゼロになる場合は縮退した非直線として拒否され、係数が完全に比例せずに行列式がゼロに近い場合は平行、完全に比例して行列式がゼロに近い場合は一致であり、それ以外の場合はxとyがDに対する符号付きの2×2の行列式から従います。3本目の直線も、最小二乗フィットも、座標そのものの単位変換もありません。算術は共有されたデカルト座標系を前提とします。任意のformはslope_interceptまたはstandardであり、別名formatとmodeも受け付けられます。formが省略された場合、エンジンはmフィールドが存在すれば傾き切片、aまたはcフィールドが存在すれば標準を推測し、formが明示的に設定されていない限りあいまいな混在を拒否します。傾き切片では、優先されるフィールドはJSON数値としてのm1、b1、m2、b2であり、フォームやスプレッドシートの呼び出し側のために10進数の文字列も受け付けられます。別名slope1とm_1はm1に、intercept1、y_intercept1、b_1はb1に、slope2とm_2はm2に、intercept2、y_intercept2、b_2はb2にマッピングされます。標準形では、フィールドはa1、b1、c1、a2、b2、c2であり、a_1、b_1、c_1、a_2、b_2、c_2の別名があります。自動化されたパイプライン内でクラメールの規則を自前で再実装することなく同一の数学的結果が必要な場合は、このページの無料ブラウザ実行と有料APIを組み合わせてご利用ください。
2直線の交点求解が学習・設計・コードで役立つ場面
API経由では成功した検索1件につき$0.002がかかり、検証に失敗したリクエストは課金されず、レスポンスが返された後は何も保存されません。この無料のインタラクティブな探索と、同一結果を返す有料APIという分割は、KITのtier-Aカタログの他のツールと同様であり、教室でのデモから自動化パイプラインへ、数学的な結果を変えることなく移行できます。
連携の活用例
宿題と試験の準備
傾き切片形または標準形の2つの線形方程式からなる教科書の連立方程式を解き、唯一の交点を確認し、平行な入力がinvalid_inputで失敗することを確認します。
技術的な質問
直線の交点計算ツールの料金はいくらですか?
このページのブラウザ版は無料です。API経由では成功したリクエストごとに$0.002がかかり、無効な入力には課金されません。
どの方程式形式に対応していますか?
m1、b1、m2、b2による傾き切片形y=mx+bと、a1、b1、c1、a2、b2、c2による標準形ax+by+c=0です。formを設定するか、送信したフィールドからエンジンに推測させてください。
2つの方程式が同じ直線を表す場合はどうなりますか?
一致する直線は無限に多くの共通点を持ちます。ハンドラーはinvalid_inputを返し、唯一の交点を持つペアを求めます。