2011-06-09 77 views
0

有人可以幫我建議讓我的項目離開地面,我不知道從哪裏開始。我想在地圖上跟蹤我的GPS位置,向當前位置添加一個特定值(例如+100米),並讓它返回新的GPS位置信息。這很簡單,但我希望它考慮道路方向。換句話說,它返回我將在目前正在旅行的道路上,距離現在100米的GPS座標。任何人都可以幫助我從哪裏開始,或者我可以如何使用mapkit來實現這個目標?iOS - 使用路線圖的GPS位置

非常感謝!

回答

0

Geez。顯然,CoreLocation對街道拓撲沒有任何瞭解。但是有一種實用工具可將拼圖地圖位置轉換爲實際的街道地址 - MKReverseGeocoder。這可以將你的經緯度變成街道地址。因此,我想你可以反覆地對你的當前位置進行反向地理編碼,注意當街道名稱沒有改變但房屋號碼有時,並將房屋號碼的變化率與你的位置變化的米數相關聯,並推算出您將在100米內的房屋號碼,然後在地圖上的該地址上放置地圖標註。

這是一個棘手的小軟件猜測。它會在交叉路口和公路終點,或其他地方出現意外改變的房屋數量(城市限制等)。這真的是我認爲可以做到的唯一純粹的機載方式。

+0

嗨丹雷,謝謝你的迴應。它將在城市範圍之外使用,所以我不認爲MKReverseGeocoder不能很好地工作。我想到了更多的方法來獲取矢量街道地圖,並將它們與GPS座標疊加在一起......然後,我可以捕捉到最近的線路,這將是當前的街道。方向可以確定路線,但交叉路口仍然會有問題。只需要找出我能找到地圖的位置......除非我在這裏完全按錯方向......? – 2011-06-13 20:01:41

+0

即使在棍棒中,你也許會對MKReverseGeocoder的能力感到驚訝。當你說「抓到最近的線路」這樣的東西時,我開始認爲使用數據API聽起來更簡單,但是如果你覺得這對你來說很簡單,那麼你就有更多的權力! :) – 2011-06-13 20:43:48

0

一個簡單的方法是使用指南針方向,或者只是跟蹤隨着時間的推移方向。缺點是它不會考慮前方道路的曲率,但在100米外,也許這是可以接受的?

+0

嗨,感謝您的反饋。令人遺憾的是,我需要密切關注曲率...... 100米是可變的,它可以是500米,甚至1公里,它需要提供道路距離,而不是直線距離。 – 2011-06-13 20:02:57