0

私は 2 つの GPS ロケーションを持っています。それぞれについて、異なる範囲で境界ボックスを作成しています。各境界ボックスには、最小/最大緯度と最小/最大経度があります。

これらの 2 つのボックスがオーバーラップしているかどうかを検出するメソッドを実装する必要があります (オーバーラップ範囲は気にしないでください。true/false のみ)。また、この方法は長いループに統合されるため、最も効率的な方法を探しています。

注: オーバーラップとは、「両方の境界ボックスに含まれるマップ上に少なくとも 1 つのポイントがある」ことを意味します。

何か案は?

4

2 に答える 2

0

1 つの長方形の角の 1 つが他の長方形内にあるかどうかを確認するだけで十分です。これは、次の 2 つの保持に当てはまります。

  • rect1.minXまたはrect1.maxX が rect2.minX と rect2.maxX の間にあり
  • rect1.minYまたはrect1.maxY が rect2.minY と rect2.maxY の間にある

このチェックにはまったく時間がかからないはずなので、効率は問題になりません。また、引数の順序は関係ありません。

于 2012-10-22T16:13:08.277 に答える