倍横距法を用いて多角形の面積を求める

ベクトルの外積

倍横距法では、ベクトルの外積(ベクトル積)を利用します。

xy平面上のベクトル 1 =(x1 , y1 , 0)と 2 = (x2 , y2 , 0)とすると、
12 の外積は、 1X2 = (0 , 0 , x1*y2−x2*y1)
また、 12 を二辺とする平行四辺形の面積は、
1|・|2|sinθ = |1X2| = |x1*y2−x2*y1




三角形の面積

xy平面上の三角形123の面積を、ベクトルの外積を利用して求める。
下図のように三角形と点0を置く。
図より、三角形123の面積は、三角形012の面積から三角形023の面積と三角形031の面積を引けばよい。

例題として、各点の座標を
0:(0,0,0)、1:(4,2,0)、2:(2,4,0) 3:(2,2,0) とすると
各三角形の面積は、平行四辺形の面積の半分であるから、ベクトルの外積を用いて
三角形012  (x1*y2−x2*y1)/2 = (4*4−2*2)/2 = 6
三角形023  (x2*y3−x3*y2)/2 = (2*2−2*4)/2 = −2
三角形031  (x3*y1−x1*y3)/2 = (2*2−4*2)/2 = −2
三角形123  6−2−2 = 2
ここで、外積の成分が符号付きで求まり、各面積の加減がなされる。

一方、三角形123は、底辺:2 高さ:2であるから
三角形の面積は、底辺*高さ/2より、2*2/2 = 2 となり、ベクトルの外積を利用した結果と一致する。


多角形の面積

xy平面上のN角形の面積を、ベクトルの外積を利用して求める。
i番目の点の座標を(xi , yi , 0)とすると、N角形の面積Sは、
S = |s1+s2+・・・+sN−1+s|/2
ここで、si = xi*yi+1-xi+1*yi
ただし、s = x*y1-x1*y


倍横距法を用いて、市区町村の行政区画の面積を求める