2012-04-18 24 views
0

我發現這個引用良好的頁面Encoding polylines for Google Maps。我已經在我的應用程序中實現了用於編碼和解碼多義線的算法,但是我正面臨着一些保持座標精度的問題。如何修復爲Google地圖編碼多段線時丟失的精度

我有這些座標爲我的折線:

57.012415241636155, 9.99178024863532 
57.012422477487256, 9.991334773101812 
57.01190974033057, 9.99068645350514 

如果我使用他們我their encoder得到這個編碼折線編碼:

qf~zIso~{@AxAfB`C 

如果後來我嘗試使用their decoder這個編碼字符串解碼我得到這些座標:

57.01241, 9.99178 
57.012420000000006, 9.991330000000001 
57.011900000000004, 9.990680000000001 

爲什麼我l計算我的座標精度?我需要我的編碼折線更精確。

回答

1

你正在失去精度,因爲編碼是這樣做的。

但是,你肯定不需要那麼精確。 (57.012410,9.991780)與(57.012411,9.991781)— 1之間的小數點後第一位—爲12cm。小數點後第五位的每個數字約爲一米。這些地圖並不準確。

+0

謝謝你的回答。我的座標是否應該使用五位或六位小數? – dhrm 2012-04-18 11:25:52

+0

要麼。無論如何,如果你打算對它們進行編碼,五是標準的,而且地圖不夠精確,無法顯示米的差異。使用超過六個是絕對沒有意義的。 – 2012-04-18 11:30:59

+0

謝謝。你有鏈接到正式的參考文件記錄? – dhrm 2012-04-18 11:38:44