点と直線の距離
点と直線の距離とは、その点から直線へまっすぐ(垂直)に下ろしたときの最短のへだたりです。直線上の点を好きに選んで結べば線分はいくらでも引けますが、垂線が最も短くなります。斜めに結んだ線分は、垂線を 1 辺とする直角三角形の斜辺にあたり、斜辺は他のどの辺よりも長いからです。ここでは原点 O(0,0) から直線 3x+4y−25=0 までの距離を求めます。
公式
一般に、点 (x0,y0) から直線 ax+by+c=0 までの距離は次の式で計算できます。
d=a2+b2∣ax0+by0+c∣ この直線は a=3、b=4、c=−25 です。点 (0,0) を代入すると、分子は ∣3⋅0+4⋅0−25∣=25、分母は 32+42=5 なので、距離は d=525=5 です。
公式の読み方
分子は、直線の式の左辺に点の座標をそのまま代入した値の絶対値です。点が直線の上にあれば左辺は 0 になり、距離も 0 になります。分母の a2+b2 は、直線に垂直な向きを表すベクトル (a,b) の長さで、これで割ることによって式の値が実際の長さに直ります。
公式の導出
直線に垂直なベクトルを n=(a,b) とし、直線上の点を Q(x1,y1) とします。Q は直線の上にあるので ax1+by1+c=0 です。求める距離は、Q から点 P(x0,y0) へ向かうベクトルを n の向きへ射影した長さにあたります。
d=∣n∣∣n⋅QP∣=a2+b2∣a(x0−x1)+b(y0−y1)∣=a2+b2∣ax0+by0+c∣ 最後の変形では −ax1−by1=c を使いました。Q をどこにとっても同じ式になるので、直線上のどの点から測っても結果は変わりません。
垂線の足
O から直線へ下ろした垂線は y=34x で、直線との交点(垂線の足)は (3,4) です。実際、y=34x を 3x+4y−25=0 に代入すると 325x=25 となり、x=3、y=4 が得られます。原点から (3,4) までの長さは 32+42=5 で、公式で求めた距離と一致します。
平行な 2 直線の距離
平行な 2 直線のへだたりも、この公式で測れます。ax+by+c1=0 と ax+by+c2=0 は x と y の係数がそろっているので平行です。片方の上の点をとってもう片方までの距離を求めると、次の式になります。
d=a2+b2∣c1−c2∣ 平行なのでこの値はどこで測っても同じで、それが 2 直線の間隔です。
円との関係
円と直線の交わり方を、中心から直線までの距離と半径をくらべて判定するのも、この公式によるものです。中心 (0,0)・半径 5 の円 x2+y2=25 とこの直線は、距離がちょうど 5 で半径に等しいので接します。
| 距離と半径 | 交わり方 |
|---|
| d<r | 2 点で交わる |
| d=r | 1 点で接する |
| d>r | 交わらない |
符号の意味
絶対値を外した ax0+by0+c の符号は、点が直線のどちら側にあるかを教えてくれます。2 点を代入した値の符号が違えば、その 2 点は直線をはさんで反対側にあり、結んだ線分は直線と交わります。この符号で 2 つの側を見分ける考え方は、機械学習でデータを直線(超平面)で分ける手法の土台にもなっています。
グラフの大きな点は、点 O(0,0) と垂線の足 (3,4) で、この 2 点を結ぶ線分の長さが求める距離です。