GML已经成为大家所接受并且容易理解的一种空间信息的交换格式标准,所以将其它GIS数据转换为GML格式进行发布就具有广泛的实用价值和市场前景。不久的将来,空间信息会大量的以GML格式存在,人们可以方便的进行空间信息的共享与交换。由此就会引发出一个非常重要的问题,那就是如何将现有的一些空间信息转换成GML格式,更好的实现各类空间数据共享。
目前,大量的空间数据都是以特定的文本数据格式进行存储的,最常见的GIS数据格式包括ArcInfo公司的Shp文件,MapInfo公司的Mif文件等等。
根据GML3规范中的Schema的描述、Shp文件和Mif文件的格式,就能将Shp文件和Mif文件转换为GML文件。在转换过程中,首先要创建一个GML格式文档,添加GML描述信息,然后循环的将Shp或者Mif文件中的地理信息元素转换为GML中的几何图元。
以ArcInfo公司的Shp文件为例。该文件是一个二进制文件,包含一个固定长度的头文件。该头文件长度为100个字节,其中包含整个文件的重要属性信息。例如:从第24个字节开始到28个字节描述的是文件的长度;从第28个字节开始到第32个字节描述的是文件的版本;从第32个字节开始到第36个字节描述的是文件中包含图形的类型;从第36个字节到第84个字节,每八个字节为一组,分别描述该图形文件的边界范围(Xmin,Ymin,Xmax,Ymax,Zmin,Zmax)。第100个字节以后是关于对象数据的描述,其中包括对point,line,polygon等几何类型的描述。每个地理对象是由一组字节决定,每组字节的长度根据所描述的几何类型的不同,字节长度也相应不同。以其中的Point点对象为例,从第0-4个字节描述对象的类型,从第4-12个字节描述点对象的X坐标,从第12-20个字节描述点对象的Y坐标。
我们将Shp文件中描述的各种地理信息与GML几何图元进行对应,其对应关系如下表所示。
Shp文件
|
GML文件
|
Point
|
Point
|
PointM
|
Point
|
PointZ
|
Point
|
MultiPoint
|
Point 或 MultiPoint
|
MultiPointM
|
Point 或 MultiPoint
|
MultiPointZ
|
Point 或 MultiPoint
|
Polyline
|
LineString
|
PolylineM
|
LineString
|
PolylineZ
|
LineString
|
Null shape
|
DBNull.Value
|
Polygon
|
Polygon
|
PolygonM
|
Polygon
|
PolygonZ
|
Polygon
|
MultiPatch
|
Polygon
|
除了以特定文本数据格式存储以外,还有相当一部分地理信息是存储在数据库中的(一般都是存储在关系数据库中)。将这些地理信息转换为GML文件的原理和上述方法是类似的,只要找到地理信息与GML几何图元之间的对应关系,就可以编程进行转换。
还有一种常见的地理信息格式就是栅格数据(Raster Data)。栅格数据是由正方形或者矩形栅格点组成,每个栅格点或者像素的位置由栅格所在的行列号来定义,所对应的数值为栅格所要表达的内容的属性值。栅格图像的编码和XML格式的编码完全不同。它不能从语法上进行分析,不能验证正确性,也没有良好的格式。而且,它的每一个栅格点的数据值都是固定不变的,将其转化XML标准的格式的时候,没有任何操作的灵活性。将栅格图像转换为GML,可以将其中所有的栅格点转换成为GML中的Point。由于通常栅格图像都包含着大量的信息,因此转换后的GML文件一般也都包含了大量的点信息。目前来看,将栅格数据转换为GML,并没有太多的实际意义。况且,GML3中已经支持栅格数据,其中对覆盖模式的描述与栅格数据集是等价的。
分享到:
相关推荐
jpgisgmlv4togml-转换器日本地理空间信息管理局 基本地图信息 基本项目 JPGIS (GML) 将 V4.0 格式数据转换为 GML 的转换器。基本地图信息: : 如何使用基本地图信息 基本项目 将 XML 数据转换为 GML $ cat FG-GML-...
以GeoJSON到GML -3- 一个包到GeoJSON的几何形状转换为GML 3.2.1。 地理标记语言(GML)是一个标准的OGC。 更多信息可以在下面找到 最新的架构可在 。 政策,程序,条款和OGC(R)的条件,请 。 OGC和开放地理信息...
首先简单论述了GML建模对空间数据共享的重要意义,然后对GML及其模式进行了阐述,最后提出了基于GML的道路网络模型,并在该研究项目中开发了一套基于GML的空间数据转换引擎,实现了e00格式、SHP文件、VCT格式与GML...
数据互操作集成模式,采用设计模式方法和地理标记语言(Geography Markup Language,GML)技术设计多源空间数据集成模型,将数据源通过转换函数生成的GML文档,利用合成器合成GML文档,同时保存到GML数据库,实现多个...
针对WebGIS应用中异构空间数据的共享问题,研究了ShapeFile文件格式和GML关于空间数据的组织方法,提出了ShapeFile文件转换为GML文档的思路,借助Vis-ualStudio.NET平台,设计了二者的转换方法,经实践验证,可快速、有效...
这个专案会建立转换服务,将上载的geojson档案转换为gml,kml(Google Earth格式)等。 建于 该应用程序正在使用: 盖达尔图书馆 实体化 用于行为测试的Specflow 入门 安装 克隆仓库 恢复解决方案 路线图 该应用...
支持shp、MapInfo、BNA、CSV、GML、KML、GMT、GPX、Geoconcept、geojson互转功能工具,支持各种空间数据转换,如shp转gml
为摆脱异构空间数据不易实现共享与互操作的困扰,设计并实现了异构空间数据文件互转模型系统,此...首创性地提出了“超集式GML数据结构”这一概念,借助于这一数据结构,烦琐沉重的空间数据互转工作变得不再那么困难。
Oracle Spatial等不同类型的关系型空间数据源,实现关系数据模型到GML视图的 映射;并基于这种映射将XQuery查询语言转换到SQL语言,取得查询结果并把查 询结果根据映射规则组织成XML视图返回给Mediator,实现多源...
首先简单论述了GML 建模对空间数据共享的重要意义,然后对GML 及其模式进行了阐述,最后提出了基于GML 的道路网络模型,并在该研究项目中开发了一套基于GML 的空间数据转换引擎,实现了e00 格式、SHP 文件、VCT 格式...
数据互操作集成模式,采用设计模式方法和地理标记语言(Geography Markup Language,GML) 技术设计多源空间数据集成模型,将数据源通过转换函数生成的GML文档,利用合成器合成GML 文档,同时保存到GML数据库,实现...
5.使用 XML 模式绑定到 GML 内容的强大模式辅助解析技术 解析 / 编码技术提供了许多 OGC 标准的绑定,包括 GML,Filter,KML,SLD 和 SE。 6.GeoTools 插件:开放式插件系统,可让您教授库其他格式 用于 ImageIO-...
提出了基于 GML模式转换的空间数据集成的可行性方案,阐述了该方案中的模式转换规则及空间映射关系,设计并实现了基于该模式转换规则的异构空间数据集成功能,验证了基于 GML模式转换集成异构空间数据的可行性。
采用开放式网格服务体系结构-数据访问与集成(OGSA-DAI)中间件的数据访问模式,利用空间数据引擎...实例表明,通过WKT中间数据模型,可实现自定义查询或跨数据服务资源的联合查询,查询结果可以方便地转换为XML,SVG,GML文档.
使用hale studio(以前为HUMBOLDT Alignment Editor)进行(空间)数据协调 hale studio是用于分析,转换和验证复杂数据集的台式机和服务器环境。 这些是适用于以下情况的主要用例: 创建INSPIRE数据集 创建GML / ...
具有对地理空间信息的高级实时渲染至关重要的功能,包括优化的Render-to-Texture功能可实现大型矢量数据集的可视化,直接内置于Worldwind渲染循环中的GLSL Shader支持,可创建自定义视觉效果轻而易举的,延迟的渲染...
XSLT,是用于对XML进行文档格式转换,把一个XML文档转换成另一种格式的XML文档,但是其中内容是不变的。 &2.DTD(Document Type Difinition DTD文档是用于规定XML文档的结构。只有结构符合所引用的DTD文件的XML文件...