2012-06-17 18 views
0

我想創建一個Web應用程序,讓我創建,存儲和顯示我的旅行。實際上類似於this service here。 基本結構/想法:在Google地圖上創建路線/航點/多段線;稍後存儲和檢索它們

  1. 通過下列選項創建我的行程
    • 負荷GPX
    • 創建折線(如飛行路徑)
    • 使用谷歌的方向創建路由
    • 每次旅行由一個或幾個「階段」或「腿」組成,每個階段都可以像上面那樣創建。
  2. 商店的路線,這樣我可以在谷歌地圖上顯示它們或進行修改(可拖動)後

所以一個地圖就然後包含看起來像this
幾個「旅行」我已經閱讀了很多關於這個事情,我想我應該能夠處理關於創建路線的部分,但是當涉及到存儲它們時,我不確定是否理解了可能的以及如何去做。

我的問題:

  • 儲存:我想要麼將每個行程一旦完成包含所有必需的信息,如航點和階段自己的XML文件。這些文件將存儲在我的網站空間,然後可以解析,以隨時顯示旅行
  • 但是,當我使用谷歌方向創建一條腿時,我發現一個問題:如何存儲/檢索這條腿並保存方向信息?這很容易,只要我不通過拖動點綴來改變路線(我只是簡單地存儲起點和終點並在飛行中創建它),但是我希望稍後能夠通過拖動線來編輯它們。是否有可能提取所有額外插入的航點,以便通過不僅使用起點和終點以及這些附加點(即,Google會向我顯示相同的路線變化),重新創建路線?
  • 是否有任何違背gmaps條款的方面?
  • 我也可以使用mySQL數據庫來存儲信息,這是更好的方法嗎?

順便說一句我是新的整個gMaps API編程。我的系統是基於PHP的。

回答

1

我會推薦你​​一個mysql數據庫來存儲信息。方向只是一堆經緯度長度,旅行時間和多邊形點。通常我將它存儲在JS數組中,但也可以使用Json或JS對象。我認爲你可以序列化數組並將其存儲在數據庫中。我只會將xml用於配置或使用xlst格式​​化輸出。這個想法也是把經緯度存儲爲點,並使用它的空間索引來獲得更快的搜索。

+0

謝謝。儘管如此,谷歌地圖的下一次顯示「方向」路線的數組是如何知道的?它確實是一個方向而不僅僅是一條折線?我正在考慮通過拖拽航點進行編輯;當處理路線時,路線會與道路/小徑對齊,而多邊形afaik可以在任何地方拖動,就像烏鴉可以這麼說。或者這只是一個參數/調用來指定格式的問題?正如我所說,我對整個API都很陌生。 – Dreamingof8a

+0

我認爲這取決於是否存儲方向的多段線以便後者使用或作爲備份。多段線功能也可用於經緯度線對。或者,您只能保存多段線並從多段線中獲取經線。你所能做的就是將折線平坦化,例如將兩點合併在一起,以明確這只是一種可視化工具,而不是嚴重的問題。 – Bytemain

+0

好的,謝謝你。我想我將不得不開始考慮是否遇到問題。 – Dreamingof8a