`
fbxyfszc30000
  • 浏览: 29101 次
社区版块
存档分类
最新评论

空间信息到GML的转换

阅读更多

   



<p class="MsoNormal"><span lang="EN-US"><span> </span></span><span>目前,大量的空间数据都是以特定的文本数据格式进行存储的,最常见的</span><span lang="EN-US">GIS</span><span>数据格式包括</span><span lang="EN-US">ArcInfo</span><span>公司的</span><span lang="EN-US">Shp</span><span>文件,</span><span lang="EN-US">MapInfo</span><span>公司的</span><span lang="EN-US">Mif</span><span>文件等等。在我们所开发的中间件中,包含一个转换工具,实现了对</span><span lang="EN-US">Shp</span><span>文件,</span><span lang="EN-US">Mif</span><span>文件到</span><span lang="EN-US">GML</span><span>文件的转化。</span>

<p class="MsoNormal"><span>以</span><span lang="EN-US">ArcInfo</span><span>公司的</span><span lang="EN-US">Shp</span><span>文件为例。该文件是一个二进制文件,包含一个固定长度的头文件。该头文件长度为</span><span lang="EN-US">100</span><span>个字节,其中包含整个文件的重要属性信息。例如:从第</span><span lang="EN-US">24</span><span>个字节开始到</span><span lang="EN-US">28</span><span>个字节描述的是文件的长度;从第</span><span lang="EN-US">28</span><span>个字节开始到第</span><span lang="EN-US">32</span><span>个字节描述的是文件的版本;从第</span><span lang="EN-US">32</span><span>个字节开始到第</span><span lang="EN-US">36</span><span>个字节描述的是文件中包含图形的类型;从第</span><span lang="EN-US">36</span><span>个字节到第</span><span lang="EN-US">84</span><span>个字节,每八个字节为一组,分别描述该图形文件的边界范围(</span><span lang="EN-US">Xmin</span><span>,</span><span lang="EN-US">Ymin</span><span>,</span><span lang="EN-US">Xmax</span><span>,</span><span lang="EN-US">Ymax</span><span>,</span><span lang="EN-US">Zmin</span><span>,</span><span lang="EN-US">Zmax</span><span>)。第</span><span lang="EN-US">100</span><span>个字节以后是关于对象数据的描述,其中包括对</span><span lang="EN-US">point</span><span>,</span><span lang="EN-US">line</span><span>,</span><span lang="EN-US">polygon</span><span>等几何类型的描述。每个地理对象是由一组字节决定,每组字节的长度根据所描述的几何类型的不同,字节长度也相应不同。以其中的</span><span lang="EN-US">Point</span><span>点对象为例,从第</span><span lang="EN-US">0</span><span>-</span><span lang="EN-US">4</span><span>个字节描述对象的类型,从第</span><span lang="EN-US">4</span><span>-</span><span lang="EN-US">12</span><span>个字节描述点对象的</span><span lang="EN-US">X</span><span>坐标,从第</span><span lang="EN-US">12</span><span>-</span><span lang="EN-US">20</span><span>个字节描述点对象的</span><span lang="EN-US">Y</span><span>坐标。</span>

<p class="MsoNormal" align="center">
<div>

<table class="MsoTableGrid" style="width: 356px;" border="1" cellspacing="0" cellpadding="0"><tbody>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="center"><span lang="EN-US">GML</span><span>文件</span><span lang="EN-US"></span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">Point</span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">Point</span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">Point</span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">Point </span><span>或</span><span> <span lang="EN-US">MultiPoint</span></span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">Point </span><span>或</span><span> <span lang="EN-US">MultiPoint</span></span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">Point </span><span>或</span><span> <span lang="EN-US">MultiPoint</span></span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">LineString</span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">LineString</span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">LineString</span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">DBNull.Value</span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">Polygon</span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">Polygon</span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">Polygon</span>
</td>
</tr>
<tr>
<td width="151" valign="top">

</td>
<td width="205" valign="top">
<p class="MsoNormal" align="left"><span lang="EN-US">Polygon</span>
</td>
</tr>
</tbody></table>


<p class="MsoNormal"><span>除了以特定文本数据格式存储以外,还有相当一部分地理信息是存储在数据库中的(一般都是存储在关系数据库中)。将这些地理信息转换为</span><span lang="EN-US">GML</span><span>文件的原理和上述方法是类似的,只要找到地理信息与</span><span lang="EN-US">GML</span><span>几何图元之间的对应关系,就可以编程进行转换。</span>
<span>还有一种常见的地理信息格式就是栅格数据(</span><span lang="EN-US">Raster Data</span><span>)。栅格数据是由正方形或者矩形栅格点组成,每个栅格点或者像素的位置由栅格所在的行列号来定义,所对应的数值为栅格所要表达的内容的属性值。栅格图像的编码和</span><span lang="EN-US">XML</span><span>格式的编码完全不同。它不能从语法上进行分析,不能验证正确性,也没有良好的格式。而且,它的每一个栅格点的数据值都是固定不变的,将其转化</span><span lang="EN-US">XML</span><span>标准的格式的时候,没有任何操作的灵活性</span><span>。将栅格图像转换为</span><span lang="EN-US">GML</span><span>,可以将其中所有的栅格点转换成为</span><span lang="EN-US">GML</span><span>中的</span><span lang="EN-US">Point</span><span>。由于通常栅格图像都包含着大量的信息,因此转换后的</span><span lang="EN-US">GML</span><span>文件一般也都包含了大量的点信息。目前来看,将栅格数据转换为</span><span lang="EN-US">GML</span><span>,并没有太多的实际意义。况且,</span><span lang="EN-US">GML3</span><span>中已经支持栅格数据,其中对覆盖模式的描述与栅格数据集是等价的。</span>
 
0
0
分享到:
评论

相关推荐

    GML解析与应用C#

    1. **GML解析**:解析GML文档通常涉及到读取XML结构并将其转换为程序可操作的对象。在C#中,可以利用System.Xml命名空间中的类,如XmlDocument或XDocument,来解析GML文件。这些类提供了加载XML文档、查询XML元素、...

    支持大数据量GML到SVG转换的XSLT优化处理器.pdf

    实验结果表明,GSxsh相比于传统的XSLT处理器,在处理大规模GML到SVG的转换任务时,性能得到了显著提升,能够更有效地支持地理信息系统的数据可视化需求。这种优化的处理器对于需要实时更新和处理大量地理数据的Web...

    gml显示地图数据

    GML,全称为 Geography Markup Language,是一种用于地理信息系统的XML(eXtensible Markup Language)方言,主要用于描述地理空间数据。在本主题中,“gml显示地图数据”指的是如何使用GML来展示和处理地图信息。...

    GML.rar_gml

    GML的核心目标是提供一种标准化的方式来表达地理空间信息,使得数据能够被不同系统之间共享和交换。它的设计灵感来源于XML,这意味着它具备了XML的结构化、可扩展和自我描述的特性。在GML中,地理对象如点、线、面...

    基于GML的WebGIS的多源异构空间数据集成研究

    OpenGIS联盟于1999年推出的GML,是基于XML的一种地理信息编码标准,旨在解决地理空间数据的描述、转换和存储问题。GML遵循数据互操作原则,为网络环境下的地理空间数据提供了通用的接口,支持矢量方式的数据传输、...

    Coverage2gml3.rar_arcinfo_coverage_gml

    GML3.0则是OGC(Open Geospatial Consortium)制定的一种XML(可扩展标记语言)规范,用于描述地理空间信息,广泛应用于Web服务和数据交换。 描述提到的任务——“把ArcInfo CoverageFile转成GML3.0格式数据”是一...

    GML在空间数据互操作中的应用研究

    作为OGC(Open Geospatial Consortium)制定的开放标准之一,GML旨在提供一种统一的空间数据表达方式,以支持不同地理信息系统之间的数据共享与互操作。GML的设计充分考虑了空间数据的复杂性,能够描述各种类型的...

    gml_fl_gf.rar_GIS gml_gml

    《GIS与地理图形标记语言GML的深度剖析》 GIS(Geographic Information System,地理信息...掌握GML的应用,对于GIS开发者和使用者而言,意味着能更好地融入到全球地理信息的生态系统中,实现更高效的数据交流与合作。

    jpgisgmlv4togml-converter:JPGIS (GML) 将 V4.0 格式的基本地图信息下载数据转换为 GML 的转换器。

    jpgisgmlv4togml-转换器日本地理空间信息管理局 基本地图信息 基本项目 JPGIS (GML) 将 V4.0 格式数据转换为 GML 的转换器。基本地图信息: : 如何使用基本地图信息 基本项目 将 XML 数据转换为 GML $ cat FG-GML-...

    地理数据信息转换应用 各类GIS数据的转换

    例如,从ESRI的Shapefile转换到GeoJSON,或者将CAD图纸转换为GML,都能实现地理信息的有效流动。 此外,GML还支持网络服务如Web Map Service (WMS) 和Web Feature Service (WFS),这些服务使得地理数据的在线发布和...

    以GeoJSON到GML-3.2.1:节点模块转换以GeoJSON几何形状以GML 3.2.1

    以GeoJSON到GML -3- 一个包到GeoJSON的几何形状转换为GML 3.2.1。 地理标记语言(GML)是一个标准的OGC。 更多信息可以在下面找到 最新的架构可在 。 政策,程序,条款和OGC(R)的条件,请 。 OGC和开放地理信息...

    shp转MapInfo、BNA、CSV、GML、KML、GMT、GPX工具

    标题中的“shp转MapInfo、BNA、CSV、GML、KML、GMT、GPX工具”指的是一款能够处理地理信息系统(GIS)数据格式转换的软件或库。这个工具的主要功能是将Shapefile(shp)格式的数据转换为其他多种GIS数据格式,包括...

    添加GML层1

    OpenLayers接收到GML数据后,会使用指定的格式解析器(在这里是`ol.format.GML2`)来读取GML元素,并将其转换为`ol.Feature`对象,这些对象可以直接在地图上渲染。`ol.Feature`是OpenLayers中表示地理特征的类,包含...

    geography markup language(gml标准

    GML作为一种重要的地理空间数据交换格式,在地理信息系统领域具有广泛的应用。通过采用XML技术,GML不仅提供了一种标准化的数据表示方式,而且支持高度的灵活性和可扩展性。无论是对于开发人员还是最终用户来说,...

    地理空间数据模型数据转换流程.docx

    【地理空间数据模型数据转换流程】在地理信息系统(GIS)的建设中,数据转换是至关重要的一步,它决定了地理信息的质量和可用性。空间数据模型是数据建模的基础,用于描述地理现象和空间关系。本文将深入探讨地理...

    基于GML的铁路地理信息系统共享中间件技术.pdf

    在铁路应用中,GML能够将不同来源、不同格式的空间数据转换为一致的数据结构,便于管理和统一处理。这尤其对铁路运输业务至关重要,因为这类业务往往需要整合来自多个部门和系统的空间信息。 描述中提到的问题主要...

    Android系统下GML可视化研究.pdf

    由于GML基于XML,能够表示地理信息及其属性和空间地理参考系统,但不支持直接显示图形,需要转化为SVG等格式才能在Android智能设备上展示。 目前,GML的可视化方法主要有两种:直接操作GML数据进行分析和显示,或者...

    XML技术及GML简介

    GML(Geography Markup Language)是XML的一个应用示例,专门用于地理信息系统的数据表示。它允许地理数据(如点、线、多边形)以结构化的方式存储和交换,为地图数据的集成和互操作提供了标准。 XML编程涉及使用...

    基于Oracle Spatial与GML的WebGIS研究.pdf

    GML是一种基于XML的地理信息交换标准,用于描述地理空间数据的结构和内容。它可以表示各种地理对象,如点、线、多边形等,以及它们的属性信息。GML的主要优点在于其互操作性和标准化,使得不同系统之间可以方便地...

    论文研究-GML3.0在城市道路网络建模中的应用研究.pdf

    首先简单论述了GML建模对空间数据共享的重要意义,然后对GML及其模式进行了阐述,最后提出了基于GML的道路网络模型,并在该研究项目中开发了一套基于GML的空间数据转换引擎,实现了e00格式、SHP文件、VCT格式与GML...

Global site tag (gtag.js) - Google Analytics