3点が与えられた三角形の面積 点と直線の距離

Post date: Feb 11, 2013 8:31:37 AM

任意の3点が与えられた三角形の面積を調べるには外積を使うと良い。

ここでa=(x1,y1) b=(x2,y2)とすると、aとbの外積はx1*y2-x2*y1となる。

よって(x1,y1),(x2,y2),(x3,y3)からなる三角形の面積は(x1-x3)*(y2-y3)-(x2-x3)*(y1-y3)の絶対値となる。

※2次元における外積とは各ベクトルの大きさとなす角θとした時のcosθの3つを掛けたものである。

また,2点a(x1,y1),b(x2,x2)を結んでできる直線と,点c(x3,y3)の距離もこれを用いて簡単に出せる.

要は面積を2点間の距離で割って2かければ良い.

2*|(x1-x3)*(y2-y3)-(x2-x3)*(y1-y3)|/√((x1-x2)^2+(y1-y2)^2)

一見複雑に見えるが,どうせ2点間の距離求める関数用意されてると思うので,それで割って2かければOK.