MATLAB Answers

2直線の交点

86 views (last 30 days)
Chikako Kuriyama
Chikako Kuriyama on 9 Nov 2017
Answered: jiro on 9 Nov 2017
plot関数を使い描画した2直線の交点を求めることはできますか。2直線は傾きと直線上の一点の座標が既知という条件でお願いします。

Answers (1)

jiro
jiro on 9 Nov 2017
「2直線の交点」とウェブで検索すると公式が結構出てきますよ。
MATLAB のコマンドを使うというより数学的に解くのが良いかなと思います。こんな感じでしょうか。
既知:k1, x1, y1, k2, x2, y2
y1 = k1*x1 + b1 --> b1 = y1 - k1*x1
y2 = k2*x2 + b2 --> b2 = y2 - k2*x2
交点 (x0, y0) は両方の直線上に存在するので
y0 = k1*x0 + b1
y0 = k2*x0 + b2
-->
k1*x0 + b1 = k2*x0 + b2
-->
(k1 - k2)*x0 = b2 - b1
-->
x0 = (b2 - b1)/(k1 - k2)
y0 = k1*x0 + b1
つまり、
b1 = y1 - k1*x1
b2 = y2 - k2*x2
x0 = (b2 - b1)/(k1 - k2)
y0 = k1*x0 + b1
で分かりそうですね。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!