2016-07-29 9 views
0

私の矩形があります。 アプリケーションは別の矩形を生成します。 これは私の四角形よりも小さくても大きくてもかまいません。 X、Y、Weight、Hightを使用して鉱山の近くにある緯度を知るにはどうすればいいですか?私は私の四角形にあるかどうかを知りたくありません。矩形が別の矩形に近いかどうかをチェックします。

+0

"near"を定義してください – Matt

+0

おそらくこの質問からアルゴリズムを試してみてください。http://stackoverflow.com/questions/4978323/how-to-calculate-distance-between-two-rectangles-context-a-game-in- luch –

+0

生成された矩形は内側にあってはいけません。それはわずかに上回るかもしれないし、より高いかもしれません。しかしそれほど他のものではありません! – Liuk

答えて

-1

次のような2点間の距離を計算する数学の公式を使用することができます。

double getDistance(int x, int y, int x2, int y2) { 
    double distance; 
    distance = Math.sqrt(Math.pow(Math.abs(x2 - x) , 2) + Math.pow(Math.abs(y2 - y) , 2)); 
    return distance; 
} 
+0

彼は長方形であり、点ではありません。 – Matt

+0

はい、彼はこれを使用して、センター間の距離や、彼が決める長方形の他の2点を計算することもできます。 –

+1

あなたのアプローチは解決策の一部であるかもしれませんが、あなたの答えは彼の問題を解決しません。少なくとも四角形間の距離を計算するアルゴリズムを提案する必要があります。 – Matt

0

は「近くに」のあなたの定義に合わせて、あなたの四角形の位置を基準にしてい1以上の非可視図形を描きますこれらの形状が問題のアプリケーション生成矩形と交差するかどうかを確認してください。

たとえば、これを実装する方法の1つは、四角形を囲む非表示の四角形を描画し、周囲の四角形がアプリケーション生成の四角形と交差するかどうかを確認することです。

0

解決策が見つかりました! 私の四角形の中間点を計算しました。 生成された矩形がポイントに入っている場合、近くにあります!

+1

「*がポイントに入っている」とは何ですか? – user1803551

+0

生成された矩形がその領域に中間点を持つ場合、近くにあります!* – Liuk

関連する問題