我正在研究一個GPS應用程序,並且想要在用戶周圍放置標記像Zombie Run和SpecTrek,但我對如何找出位置感到十分困惑圍繞用戶。把位置放在某個半徑的用戶周圍的地圖上 - android
我一直在尋找Location類的文檔,並使用distanceTo()函數以及MapView的latitudeSpan(),longitudeSpan()和getProjection()函數,但我想不出如何決定例如用戶周圍100米的位置。
因爲我知道用戶的位置,我只會放置距離用戶約1公里的標記,我最多可以將該區域視爲平面而不是橢圓形,因此可以將用戶的位置經度和緯度以及從他們+/-來繪製標記周圍的標記(使用一些基本的三角函數,例如x = cos(radius)和y = sin(radius)將它保持在玩家周圍的半徑大小的圓內)?
我不明白多長時間/緯度對應於實際標量距離,因爲在100英尺100點距離90英尺100點距離10米處會有多長? (我知道這些值是完全錯誤的,只是用它們來說明我的問題)。
感謝您的時間,
Infinitifizz
您好,感謝您的答覆,但是這確實是我的問題,我沒有興趣點,我想隨意把「項目」在地圖上,供用戶瀏覽就像殭屍跑和Spec Trek一樣。 說用戶啓動應用程序,它顯示了他們在mapview中的位置以及他們必須訪問的3個標記或周圍的標記,我不知道如何放置這些標記,因爲我不知道如何工作從用戶那裏說出10米,然後在那裏放置一個標記。所以我需要一個distanceTo()類型的函數反向,讓我指定的距離,它創建一個標記點在這一點長/拉特。 – 2011-04-02 20:44:13
我不認爲有一種方法可以爲您提供定義半徑內的每個GeoPoint或位置,但您可以自己計算這些點。只要看看我提供的鏈接。有一個部分叫做「從起點到目的地點的距離和方位」。在那裏,您有一個具有給定地理座標的公式(您當前的位置),並以度爲單位提供距離和方位。利用該公式,您可以計算特定的地理座標並將其顯示在您的地圖上。 – 2011-04-02 20:54:41
啊,非常感謝。我仍然無法使它工作,無論是在我的應用程序還是在網站上,如果我改變了這些值。該網站的問題是,它沒有說出地球半徑的價值。所以把用戶的位置(我在英格蘭)和地球的半徑作爲從維基百科獲取的平均半徑爲6371,距離爲1km,方位爲2(不知道這是否應該是一個整數,但這就是我所做的)它決定了一個點在祕魯的1公里,這顯然不是這樣的:-)任何幫助將遇到極端的感激 – 2011-04-02 23:02:18