Skip to main content

polygon_area2

Function polygon_area2 

Source
pub fn polygon_area2(points: &[Point]) -> isize
Expand description

多角形の符号付き面積の2倍を返します。

points は周上の順に並べます。反時計回りなら正、時計回りなら負です。 空または頂点が2個以下なら 0 を返します。頂点数を N とすると O(N) です。 最後の頂点と最初の頂点は自動的につなぐため、先頭頂点を末尾に再追加する必要はありません。 自己交差しない多角形の通常の面積は、戻り値の絶対値を2で割った値です。 戻り値が奇数なら面積は半整数なので、整数除算による切り捨てに注意してください。