2014-06-18 62 views
2

綁定的矩形我有一組值內說如何檢查值處於使用Java

LatLong1=(lon=74.663085,lat=22.67578) 
LatLong2=(lon=80.663085,lat=28.67578) 

這是一個長方形的界定區域的緯度和經度值。 LatLong1是左側和底部邊界值,LatLong2是右側和頂部邊界值。

現在我需要檢查當前時間是否有某個對象位於此邊界內。 如果我的對象的位置分別爲經緯度75.67和26.89。如何檢查這些值是否位於上述LatLong1,LatLong2值中?

+0

更多信息!那些你想檢查的對象是如何被完全包含的?我們是否也必須假設它們是矩形? – Alex

+2

把它當成一個點先生。 – Vidya

+0

爲什麼您將OpenLayers標記爲感興趣的問題。客戶端Javascript庫與Java有什麼關係? –

回答

3

我已經猜到你的對象進行pertenency您需要檢查是rentangle也與價值觀:

LatLong1=(lon=x0,lat=y0) 
LatLong2=(lon=x1,lat=y1) 

如果是這樣的話,兩者的圖形結構綁coordenates同一產地,要檢查的條件是:

if((x0>=lon0 && x1<=lon1) && (y0>=lat0 && y1<=lat1)) 
    return true; 
else return false; 

如果需要檢查,如果一個POIN t在矩形內,是點(x0,y0)的座標:

if((x0>=lon0 && x0<=lon1) && (y0>=lat0 && y0<=lat1)) 
    return true; 
else return false; 
1

我不知道外接程序。但是,是不是像查找一個點(x,y)是否在左下角是(x1,y1)而右上角是(x2,y2)的矩形中?

在這種情況下(X,Y)是長方形,如果(x>x1 && x<x2 && y>y1 && y<y2)

1

您可以創建一個矩形。用你的兩點,你可以計算左上角和尺寸。

Rectangle rect = new Rectangle(upperLeftCorner, dimension); 

您要檢查點(X,Y)位於矩形:需要

Point p = new Point(x,y); 
rect.contains(p);