簡體   English   中英

實現協作實時地圖應用程序

[英]Implementing a collaborative real-time mapping application

實現實時協作映射應用程序的最佳方法是什么? 在Google或Bing地圖API之上構建它的可能的不同方法是什么,這些API是否提供了聚合來自不同用戶的數據的任何方便方法? 我可以想象,與地圖API本身有不同程度的集成,以及可能存在類似事物的現有軟件。 任何指針或提示都會有所幫助。

背景 :Google Docs和其他協作編輯軟件允許一組人實時編輯文檔,並處理諸如同時輸入和顯示其他用戶的進度和光標之類的事情。 我想做一些與地圖應用程序類似的事情,其中​​一群人可以實時地在地圖上標記和注釋位置。 這個想法是在自然災害或需要映射和分類大量地理數據的其他大型事件之后立即支持大規模眾包映射。

此應用程序需要在瀏覽器中運行。 同步性水平不必像Google文檔那樣集成 - 即,只要事物在地圖上實時顯示,我們就不一定要看到用戶在哪里編輯以及他們在哪里打字。 但是,它確實需要與地圖API集成,因此比使用直接協作文本編輯器更具挑戰性,可以使用示例。

在搜索時,我找到了許多類型的協作文本編輯的示例源代碼,其中包含可用源代碼的Web應用程序的最佳示例是Etherpad 但是,我需要將這個想法應用於映射問題。 有哪些方法可以在地圖API和現有示例的指針上構建實時應用程序?

更新 :對於有興趣的人,我最終在Meteor上使用OpenLayers構建了這個: https//github.com/mizzao/CrowdMapper 隨意檢查出來。

在任何方面都不是一個完整的答案,但人們正在使用Meteor做很酷的事情:

http://www.fargeo.com/blog/using-meteor-for-real-time-geospatial-data/

http://meteor.com/#examples/parties

根據您提供的用例場景,您可以嘗試聯系Open Street Map的人道主義響應團隊,他們在危機響應情況下使用OSM作為協作地圖數據收集和傳播工具: http//wiki.openstreetmap.org/wiki/ Humanitarian_OSM_Team

這不是嚴格的實時,但如果你托管自己的OSM服務器,你可以設置每次提交更新時重新生成的地圖圖塊,然后所有用戶都會收到地圖的最新視圖。

這很簡單。

  • 步驟1.創建包含條目的數據庫
  • 步驟2.創建一個地圖,填充數據庫中記錄的點
  • 步驟3.為人們創建一個界面,以便將項目添加到數據庫中(實時)。

用於實施協作部分的后端解決方案將是google realtime api https://developers.google.com/drive/realtime/realtime-quickstart

還有firebase: https//www.firebase.com/how-it-works.html

我不知道如何實現這一點,但如果您知道如何在數據結構上存儲地圖的編輯,那么您需要做的就是將該數據結構與上述API中的一個相結合,您基本上已經完成了。

這是一個鏈接http://scholar.lib.vt.edu/theses/available/etd-05032001-113750/unrestricted/FinalThesis.pdf
您可以瀏覽此PDF。
它讓您深入了解協作編輯器的工作原理和方式。
它提供了有關他們使用的架構和設計的詳細信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM