SQL Server 2008空间数据应用系列十一:提取MapInfo地图数据中的空间数据解决方案
1、本文示例基于Microsoft SQL Server 2008 R2调测。
2、具备 Transact-SQL 编程经验和使用 SQL Server Management Studio 的经验。
3、熟悉或了解Microsoft SQL Server 2008中的空间数据类型。
4、具备相应(比如OGC规范、KML规范)的GIS专业理论知识。
5、了解MapInfo地图数据、ArcGIS Shp地图数据格式。
首先分析个案例:如果产品要实现在Silverlight开发的Map应用中将省份、地市和区县标记出来的功能,通过分析只能获取到省份、地市和区县的空间数据,然后在Map应用中动态绘制图层叠加在Map的图层上。自己绘制图层叠加最关键的一点就是要获取到省份、地市和区县的空间数据,从已有的地图数据中导出这份数据乃明智之举。本篇结合笔者的经历,介绍一种快速提取MapInfo地图数据文件中的空间数据的方案,供大家参考。
一、准备环境
1、安装MapInfo Professional 8.0/8.5,本文基于MapInfo Professional 8.0软件平台。
3、安装Microsoft SQL Server 2008 R2。
二、使用MapInfo Professional转换地图数据格式
MapInfo Professional提供了地图数据格式转换工具,通过菜单“tools->universal Tanslator->universal Tanslator” 便可打开地图格式转换面板,如下图:
通过以上步骤转换.tab的地图数据为.shp格式的地图数据,同时得到的文件有.shp、.shx、.dbf和.prj四种扩展名的文件,具体有什么作用这里就不介绍了,主要使用的是.shp,其他文件都是辅助的数据文件。
三、导入Shpfile地图空间数据到SQL Server 2008
这里不做详细介绍,不清楚如何导入数据的请移步《使用空间工具(Spatial Tools)导入ESRI格式地图数据》。
四、SQL Server Management Studio中预览空间数据
SQL Server Management Studio 支持两种方式查看空间数据,既表记录方式和空间结果方式,下图为两种方式的截图。
五、通过空间查询到处空间查询结果
在SSMS中通过查询空间数据表,使用SQL内置函数可以将空间数据转换为图形坐标点集合。如下图:
上面的操作提取出了坐标点集合,可以直接将查询结果另存为txt文件,直接就可以复制使用里面的地理坐标数据了。
六、相关资料
[1]、SQL Server 2008空间数据应用系列九:使用空间工具(Spatial Tools)导入ESRI格式地图数据
[2]、空间工具(Spatial Tools): http://www.sharpgis.net/page/SQL-Server-2008-Spatial-Tools.aspx
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述