問) ある多角形の頂点列 Point[0],Point[1],…,Point[N-1]が与えられたときに、この多角形が凸多角形であるかどうかを判定するアルゴリズムを示せ。 但し、ここで言う凸多角形とはその内角がすべて180゜以下*1とする。 与えられた点を全て内包する最もタイトな(小さな)凸多角形を(点集合の)凸包と呼ぶ。凸包の示す領域とは要するに凸多角形の内側の領域である。凸包は交差判定などがしやすいので計算幾何で頻繁に問題になる。 コンピュータグラフィックスの世界でも、ポリゴンにテクスチャを貼り付けて描画するときにたいていの3Dシステムは転送元テクスチャの領域および転送先スクリーンの領域とは共に与えた頂点集合の凸包に制限される。よって凸包について正しく理解しておくことは非常に重要だ。 答) id:yaneurao:20070118で用意したCCW関数(robustなarg関数)を用いれ