2016-09-14 12 views
-1

タイトルが少し混乱するかもしれませんが、私は自分の問題を説明したいと思います。グループに分割された総面積

私は、(3943、2456)の位置と(4954,3245)の位置を持っていると言います。

私は、プレーヤーがエリア内にいるかどうかを検出する方法を持っています。その真の場合、それはなるだろう形状は長方形、南西は、X1、およびY2になり、北東はx2のだろうが、私は何をしたいのかY2

public boolean Area(final int x1, final int x2, final int y1, final int y2) { 
    return (absX >= x1 && absX <= x2 && absY >= y1 && absY <= y2); 
} 

は、正方形の面積を得るということです方法は、私は定義されたInAreaの中に10ゾーンがあることを意味する10と言うことによって領域を分けることができます。どのように私は行って、それを行うことができますか?

+0

この質問は意味のある回答を得るには広すぎます。あなたの質問を改善するために、あなたが以前に試したこと、そしてそれがあなたが期待しているように働いていない理由を教えてください。 http://stackoverflow.com/help/on-topic –

答えて

0

この質問を正しく理解していると、2点(x1、y1)と(x2、y2)(黒で表示)があります。 Example そして、黄色の線が示すような四角形を作成しようとしています。

x1 & x2の距離が長方形の片側になり、y1 & y2の距離が他方になります。したがって、(3943、2456)&(4954,3245)の場合、x距離は4954 - 3943、y距離は3245 - 2456になります。あなたに1011 x距離と789 y距離を与えるでしょう。これが長方形の2辺です。あなたは一緒に時間を過ごしてあなたの地域を得る。

グリッドを作成する場合は、x距離を列数で除算する必要があります。これは、1つのグリッドセクションのx距離を取得し、y距離を取得する行数で割ったものです1つのグリッドセクションのy距離。うまくいけばそれがあなたが求めていたものです。

関連する問題