p1 と p2 の 2 つのポリゴンのオーバーラップをチェックする関数を実装しました。これは、p1 が p2 とオーバーラップしているかどうかを確認するためです。エッジを共有できます)。
関数は問題なく動作します。問題は、1000回呼び出され、各エッジをポイントごとに反復処理する必要があるため、プログラムが非常に遅くなることです。ポリゴンのオーバーラップの 4 つのケースのみをチェックしています。
三角形が三角形に重なる場合。
三角形が長方形に重なっている場合。
三角形が平行四辺形に重なっている場合。
長方形が平行四辺形に重なっている場合。
これらの重複のケースが発生しているかどうかを確認する、より簡単で高速な方法はありますか?