4

我们有一个带有地图组件(ASP.NET/SQL Server 2005,Google Maps API)的基于 Web 的应用程序。映射组件正在发展——它最初是一个简单的、不错的功能,并逐渐成为应用程序的基石;所以我们开始需要执行更复杂的映射任务。我试图找出最好的平台是什么。我们需要做的一些例子:

  • 读写 KML
  • 查找给定点一定距离内的所有点
  • 找出哪个多边形包含一个点(例如这个点在哪个省)
  • 查找哪个多边形包含给定的多边形(例如该区在哪个省)
  • 从其他格式(例如 ArcGIS shapefile)导入数据
  • (也许)我们自己提供地图图块,而不是依赖 Gmaps API

其中一些我们已经做了,只是用我们自己的代码。我们将坐标存储为十进制列对,将形状存储为 KML 片段,并在我们自己的代码中实现了一些标准算法(多边形中的点等)。到目前为止,我们还没有依赖任何第三方组件、开源库或空间数据组件,但我想为这些东西找到一个可靠的平台,这个平台经过了很好的测试,会给我们成长的空间。

我正在考虑的一些选项包括:

  • 用于记录和查询地理数据的 SQL Server 2008 空间组件
  • SharpMap 或 NetTopologySuite 用于在 .NET 代码中操作地理数据

我应该考虑其他选择吗?你有什么建议?

4

3 回答 3

2

启用空间的数据库非常适合您问题中的“查找”任务。由于您已经在使用 SQL 服务器,因此一个合理的选择是转到 2008 年,以便获得空间扩展。

Oracle 和 PostGreSQL 也有很好的空间扩展。MySQL 没有。

于 2011-05-07T10:04:56.060 回答
1

您应该查看 ESRI api。silverlight、javascript、flex,甚至是 java 和 iOS 版本。它将完成您在此处描述的所有操作,甚至更多。

于 2011-04-30T22:55:05.443 回答
0

我会建议您查看MapAround。它是 GLP3,具有与 SharpMap 几乎相同的功能,但具有性能优化

于 2013-04-18T13:33:23.877 回答