プログラムをやっていると多角形から情報を取り出すことが必要になることがたまにあります。 過去にそういう状況になった際に使用した計算をいくつかご紹介します。 前提条件 処理をするうえで入力する情報(頂点の情報)に条件を設定しました。 これは目的に応じて処理を簡略化するため行います。 ここでは以下の条件となります。 扱うのは2次元の図形 多角形である 自己交差している図形は入力しない 始点と終点は同じ値を入れる 自己交差している図形というのはこういうものです。 四角形なのですが自身の図形の中で交差が存在しています。 不要な点の削除 多角形の頂点としてなくてもいいものを削除します。 そんな点があるのかといいますと見た目上はありません。 ただプログラム的には存在する可能性があります。 例えば(-1,0),(0,0),(1,0)の三角形です。 三角形と言いましたがこれは直線です。 辺の中に頂点がある