我想创建一个应用程序,用户可以在污染工厂的地图位置标记。 Google地图提供了MAP编辑器功能。我们希望拥有自己的网站,如www.toxic-map.org,人们可以在这里标记这些位置。对此最好的方法是什么?
此外,我们应该能够备份这个可以交叉检查或用于其他目的的数据库。
这将使我们对这些实体进行很少的准确普查,从而帮助我们打击这些对环境造成危害的非法工厂。我们的大部分工作都集中在亚洲发展中国家。
已编辑: Google地图是其中一个选项。我也对其他可能的解决方案持开放态度。我正在寻找能够快速进行原型制作的东西。
提前谢谢!!
答案 0 :(得分:3)
在客户端,我建议您查看OpenLayers,这是一个在BSD风格的许可下发布的免费开源Web映射框架。它完全用Javascript编写,提供了许多功能,包括应用程序可能需要的功能(向地图添加标记,拖动它们以调整位置,......)。
它还支持许多不同的地理数据格式和服务,例如WMS,KML或Google地图。
如果您担心有关使用Google地图的许可问题,您可以使用其他全球数据来源,例如OpenStreetMap或公共WMS,如果它们能够为您感兴趣的区域提供足够的报道。
在服务器端,我同意Daniel Vassallo提供的答案。我将添加一些细节,并建议您以OpenLayers本身支持的标准格式提供标记,例如KML,GeoJSON或GeoRSS。它可以很容易地在地图上绘制标记。
看起来像一个非常有趣的项目,我希望你能幸运地开始它。
答案 1 :(得分:1)
我似乎记得,如果你通过谷歌的界面输入它们,你可以用坐标做什么限制,但如果这不打扰你那么肯定,谷歌可能是你要走的路。 (它可能只与输入Google Earth的几何图形有关。)
Google无论如何都似乎与你的意识形态一致,因为他们正在进行大量的绿色电力开发。甚至可能成为卖点。
但是,如果您可以单独输入数据并让谷歌地图只为您显示,那么我认为他们不能保留对数据的声明。
答案 2 :(得分:1)
我认为您最好的选择是使用Google Maps API代替“我的地图”中的地图编辑器。
使用一些基本的JavaScript,您将能够允许用户在他们想要标记的污染位置上删除标记。
您需要服务器端的数据库和瘦的应用程序层:
您可能希望使用AJAX在浏览器和应用程序层之间进行交互。
我认为这类项目将成为Google App Engine托管的绝佳候选人。您将能够利用webapp framework的简单性,而Google Datastore看起来很合适。
作为旁注,您可能有兴趣查看Google地图的Heat Map API。我认为热图在这样的项目中会很好看。
答案 3 :(得分:1)
方法是这样的:
1.用户可以将标记拖动到有毒工厂的位置。
2.打开一个简单的表格,输入有毒工厂的详细信息。
3.然后将纬度,逻辑和其他数据保存在数据库中。
请参考www.loppee.com他们有一个类似的解决方案,用户可以在其中标记人或地点的位置。 Loppee使用LeafletJS javascript框架。这是一个简单的框架。您将能够开发快速原型。 LeafletJS.com拥有简单易用的代码示例。
此外,您还可以启用地理定位和IP三角测量。请参阅:Longitude and latitude value from IP address