アトリエ ぺっぺ

トップページ > プログラムTips > 2点間の距離

◆ 2点間の距離
2点間の距離を取得するには、以下のようにします。
 
■ 必要な情報:
  ○ 任意の2点 pt1(x1,y1) pt2(x2,y2)
    // 準備の計算
    dx = x2 - x1;
    dy = y2 - y1;
    // 判断用の計算
    dwk = dx * dx + dy * dy;
    
    // これで、もしdwkが0なら、距離は0です。
    // dwkが0以外なら、その二乗根が距離となります。
    dist = EQ0(dwk) 0 ? 0 : √dwk;
※ 解説
これは、直角三角形の性質から理解することができます。
直角三角形の、斜辺(斜めの辺)と他の辺との長さの関係は、下記のようになっています。
 

 
距離を求めたい2点を、この直角三角形に当てはめることで、距離を算出することができます。
つまり、こういうことです。
 

 
このように2点のX・Y成分の差が、それぞれ2辺の長さになります。
そして、斜辺の長さが2点間の距離、ということになります。
 
 辺1の長さ = 点2のX - 点1のX
 辺2の長さ = 点2のY - 点1のY
2点間の距離 = √辺1の長さの二乗 + 辺2の長さの二乗
 
ちなみに、辺1の長さも辺2の長さも0である場合は、2点は同じ点ということになり、その距離も0になります。
 

(C) 2002 atelier-peppe
ababa@atelier-peppe.sakura.ne.jp