2011-04-06 76 views
3

我想跟蹤我的旅行距離與我的車。 它會開始記錄,當我的速度將大於0在KM/H使用GPS獲取旅行距離

我得到了我的速度與此代碼:speed = location.getSpeed()* 3.6;

想做到這一點:

如果(速度> 0) //追蹤我的距離。

我只找到了如何計算兩點之間的距離。 謝謝你的幫助。

回答

1
  1. 請您記錄
  2. 列表中的每個點的所有點的列表,計算到下一個距離(顯然你知道如何做到這一點),並把它添加到totalDistance。
+0

如果它是不動它會計算不僅僅是採取的最後一個位置和前一個較長的距離。 – user1154664 2012-08-25 18:14:10

1

這是我怎麼會接近那個有趣的問題:

  • 使用Sensor.TYPE_ORIENTATION當你的車改變方向的結論,例如轉折點。定義一些閾值以準確地得出結論,並在此時獲得GPS位置
  • 如果您在高速公路上(無拐角)長時間駕駛,請添加定期GPS點採樣
  • 計算列表中兩個最後點之間的距離並獲得兩點之間的距離
  • 添加值,實時獲得

這種方式,你用近似直線段的路徑是接近真實值累計距離。

2

我認爲測試的速度(或方向)過於複雜。

如果不需要優化電池壽命(例如,您正在使用汽車充電器),我會每隔n秒對位置進行一次採樣,並根據當前和最後一次座標更新行駛距離。

如果汽車沒有移動,那麼GPS座標不應該改變(除了可能由於準確性問題),所以行駛的距離在靜止時不會改變。

如果你只對距離感興趣,而不是路線,那麼你只需要2點,當前和以前。

希望這有助於

菲爾Lello

+0

嗨菲爾,傢伙沒有車充,我只是問他:)(只是開個玩笑)。 – Zelimir 2011-04-06 16:57:41