论文部分内容阅读
【摘 要】在三维GIS空间分析技术取得突破之前,二三维一体化GIS仍然是一种兼取二维GIS与三维GIS优势、实用的GIS解决方案。本文结合具体的城市地下管线数据,基于DOA架构思想,利用成熟的二维GIS软件ArcGIS和三维GIS软件Skyline,设计并实现了一种二三维一体化WebGIS空间数据组织形式。
【关键词】二三维一体化;空间数据组织;WebGIS;WebService;ArcGIS;Skyline
1引言
目前二维、三维GIS各有优劣,WebGIS也愈发追求系统效率和地图表现力,二三维一体化GIS,尤其是二三维一体化WebGIS,仍然存在强烈的应用需求和很大的市场空间。二三维一体化GIS实现的关键即在于二三维空间数据的一体化组织与管理,而传统的二三维一体化GIS往往“貌合神离”,前台二三维联动展示看上去一体化,后台二三维数据却是分开组织与管理,存在同步更新维护困难等问题[1]。
本文提出了一种城市级别的二三维一体化WebGIS空间数据组织形式,与传统的二三维一体化GIS空间数据组织形式相比,实现了二三维数据的同步实时显示与同步更新维护,使二维GIS与三维GIS从内到外、从后台到前台真正实现一体化,并实际应用于天津市静海县二三维联动地下管线信息管理系统的建设。
2二三維一体化空间数据组织形式现状
目前,在二三维一体化应用中,二维GIS和三维GIS在数据结构、数据存储方式以及系统架构上都存在一定程度的不同,数据多采用分别存储的方式。二维三维环境均通过客户端向服务器发送请求、加载各自分别存储于数据库中的数据。服务器回传数据后,客户端再根据不同的二三维界面调用各自对应的API函数进行绘制显示,进而实现二三维一体化[2]。这种存储方式存在的主要问题有:
(1)数据模型、数据结构均存在一定程度的不同;(2)数据分别存储,导致数据冗余、数据维护困难、数据更新代价高;(3)增加服务器压力,降低数据访问效率,降低客户端运行效率。所以,本文提出了一种基于DOA(DataOrientedArchitecture,面向数据的体系结构)架构思想的二三维一体化WebGIS空间数据组织形式,采用G/S(General-Browser/Service-Cloud,通用浏览器/服务云)模式,以数据为核心,结合相关技术,实现了对二三维一体化WebGIS空间数据的统一管理。
3二三维空间数据的一体化组织
3.1二维空间数据的组织。二维空间数据的组织采用二维GIS软件ArcGIS来进行,ArcGIS是一款成熟稳定、功能强大、应用广泛的GIS软件,其优点无需多言。底层数据库采用Oracle10g,以表(Table)和字段(Field)的形式存储二维空间信息与属性信息。遵从ArcGIS的数据存储惯例,二维空间信息均存储于各表的“Shape”字段,相关属性信息存储于同一张表的其他字段。对二维空间数据的存储与读取采用空间数据引擎ArcSDE来实现,然后把对空间数据的各种操作以WebService形式通过ArcGISServer进行发布,Web客户端通过调用WebService即可实现对二维空间数据的访问与操作。
3.2三维空间数据的组织。三维空间数据的组织采用三维GIS软件Skyline来进行,Skyline也是一款成熟优秀的三维GIS软件,其优点在此不再赘述。底层数据库采用同一个Oracle数据库,也以表(Table)和字段(Field)的形式存储三维空间信息(包括三维空间坐标:x、y、h;三维空间姿态:航偏角Yaw、俯仰角Pitch、旋转角Roll)与模型信息,同一类别专题数据的二维空间信息与属性信息及三维空间信息与模型信息均以字段(Field)形式存储于同一张表(Table),例如供水管线的二三维信息均存储于表TGSPIPELINE。数据表结构截图如图1所示。
对于三维模型数据,具体到本文的城市地下管线模型,对于管点模型,在专题数据入库时根据不同的管点类别将其赋予不同的管点模型并指向对应的URL路径;对于管线模型,在专题数据入库时根据不同的管线类别及管径可以设定管线模型剖面样式(形状及大小),也可以设定管线模型侧面的贴图样式(形状及颜色),这些信息与模型URL路径信息一样存储于同一张表。前台绘制时,系统会实时读取管线数据的三维空间信息及模型信息并将其放样显示成模型。三维模型及三维场景均以文件形式存储于服务器硬盘,Skyline可以利用TerraGate把三维模型数据以及三维场景数据(MPT文件)以WebService形式进行网络发布,利用TerraExplorer配置三维地图文档生成FLY文件(类似用ArcMap配置mxd文档)时,将某一类别管线数据的三维空间信息与模型信息均指向对应的Oracle表中的特定字段(如上文所述,某类管线表中模型数据字段里存储的即是已发布的对应管线模型的URL地址),最后,将TerraExplorer控件嵌入到开发的网页中并指向特定的FLY文件即可实现对三维空间数据的访问与操作[3]。
3.3二三维空间数据的一体化组织形式。本文所述的二三维数据一体化组织形式的关键点即在于同一类别专题数据的二维空间信息与属性信息,以及三维空间姿态信息与模型信息均存储于同一张数据库表。二三维数据一体化组织形式如图2
所示。
4二三维数据一体化的应用实践
4.1数据显示层面的实时联动。如前文所述,前台网页中二维地图插件和三维地图插件对数据的显示都是通过实时访问各自发布的地图服务来实现的。地图服务是实时发布的,而各自的地图服务又来源于同一个数据库,某类专题数据的二三维空间信息又来源于同一张数据表,所以从后台机制上保证了数据显示时内容的一致与时间的同步。前台网页具体实现而言,二三维联动系统中,通过坐标转换及联动模式下二三维交互时的事件触发机制保证两者地图视图显示的同步。本文结合的实际应用中,二三维地图均采用国家80坐标系,在各自的鼠标事件响应函数中,以及视图刷新事件响应函数中均建立了坐标传输机制,通过当前视图的中心点(CenterSign)及当前视窗(Envelope)来控制两者中心位置与视图范围变化的一致性[4]。数据显示层面的一体化效果如图3所示。 另外,本文结合的实际应用中,前台网页基于Silverlight开发,二维及三维地图控件均放置于Grid控件中,通过简单的鼠标操作即可实现二维或三维地图窗口的隐藏与显现,从而在系统界面上可以在二维、三维、二三维联动三种模式之间的自由切换,实现了二维WebGIS、三维WebGIS、二三维联动WebGIS的“三合一”,极大地满足了用户需求。切换形式如图3左下角所示。
4.2数据操作层面的一体化
由于二维与三维的相关属性数据都存储在同一张数据表中,这种形式保证了二三维平台在进行某类专题数据的属性查询、空间分析等操作时针对的都是同一张数据表。本文结合的实际应用中,属性查询时,在三种模式下均可实现且结果完全一致;空间分析时,由于三维GIS空间分析的局限性,空间分析功能通过二维平台来实现,三维平台通过动态数据加载功能实时加载并直观展示二维空间分析的结果,达到了数据操作层面的一致性[5]。数据操作层面的一体化效果如图4所示。
4.3数据的同步更新维护
专题数据的实时更新与维护是城市级别GIS应用的一个关键功能。传统二维桌面GIS在数据更新维护方面的技术已经十分成熟,二维WebGIS也实现了在线编辑功能,而三维WebGIS的在线编辑技术尚未完善[6]。鉴于上述原因并结合管线管理业务需求,在本文结合的实际应用中,另外开发了一个配套的桌面版二三维一体化管线数据实时批量更新工具。根据《天津市地下管线工程现状及竣工数据汇交规定》(2009),上交至管理部门准备入库更新的批量管线数据均为MDB格式,包含完整的管线管点坐标信息及埋深、管径等属性信息。利用此工具导入MDB数据,通过识别、计算并赋值到相应字段,即可以生成前文所述专题数据表并导入更新至服务器Oracle数据库。管线类专题数据表涉及的二维空间信息字段即为ArcGIS空间数据格式常用的SHAPE字段,三维空间信息字段为起止点空间坐标,以及根据管线起止点空间坐标计算的管线模型的roll、pitch、yaw三个空间姿态角度值等,三维模型字段为其管线类别对应的模型文件存储路径、模型剖面信息、模型侧面信息等。
5结语
本文阐述了一种二三维一体化WebGIS的空间数据组织形式,有效解决了传统二三维一体化GIS中二维空间数据与三维空间数据存储、管理不一致的问题,实现了二三维空间数据组织的真正一体化。通过实践证明,本文阐述的二三维一体化WebGIS空间数据组织形式是可行的、有效的。同时,本文所述的空间数据组织形式仍然存在待解决的问题,比如当出现新的专题数据类别时,无法基于B/S架构实现模型数据的动态更新等,这也是今后的努力方向。本文旨在提出一种二三维一体化WebGIS空间数据组织形式,为城市GIS二三维一体化的研究提供一种借鉴。
参考文献:
[1]周顺平,魏利萍,万波,等.多源异构空间数据集成的研究[J].测绘信息与工程,2005,30(4):30-32.
[2]解岩,DOA架构下二三维GIS一体化机制研究[D].成都:成都理工大学,2013.
[3]钟海东,吴健平,李平等.基于Skyline和视频监控的三维WebGIS应用研究[J].微计算机信息,2011,5:20-23.
[4]閔星,曹伟,蒋华.基Silverlight的二三维联动WebGIS的设计与实现[J].城市勘测,2014,1:52-55.
[5]罗智勇,罗娟,赖德军.RIA技术方案下的插件式WebGIS系统架构设计[J].测绘科学,2012(11):160-163.
[6]高飞,尤磊,阮红利.基于开源项目的二三维联动GIS系统的设计与实现[J].测绘科学,2009(10):144-145.
【关键词】二三维一体化;空间数据组织;WebGIS;WebService;ArcGIS;Skyline
1引言
目前二维、三维GIS各有优劣,WebGIS也愈发追求系统效率和地图表现力,二三维一体化GIS,尤其是二三维一体化WebGIS,仍然存在强烈的应用需求和很大的市场空间。二三维一体化GIS实现的关键即在于二三维空间数据的一体化组织与管理,而传统的二三维一体化GIS往往“貌合神离”,前台二三维联动展示看上去一体化,后台二三维数据却是分开组织与管理,存在同步更新维护困难等问题[1]。
本文提出了一种城市级别的二三维一体化WebGIS空间数据组织形式,与传统的二三维一体化GIS空间数据组织形式相比,实现了二三维数据的同步实时显示与同步更新维护,使二维GIS与三维GIS从内到外、从后台到前台真正实现一体化,并实际应用于天津市静海县二三维联动地下管线信息管理系统的建设。
2二三維一体化空间数据组织形式现状
目前,在二三维一体化应用中,二维GIS和三维GIS在数据结构、数据存储方式以及系统架构上都存在一定程度的不同,数据多采用分别存储的方式。二维三维环境均通过客户端向服务器发送请求、加载各自分别存储于数据库中的数据。服务器回传数据后,客户端再根据不同的二三维界面调用各自对应的API函数进行绘制显示,进而实现二三维一体化[2]。这种存储方式存在的主要问题有:
(1)数据模型、数据结构均存在一定程度的不同;(2)数据分别存储,导致数据冗余、数据维护困难、数据更新代价高;(3)增加服务器压力,降低数据访问效率,降低客户端运行效率。所以,本文提出了一种基于DOA(DataOrientedArchitecture,面向数据的体系结构)架构思想的二三维一体化WebGIS空间数据组织形式,采用G/S(General-Browser/Service-Cloud,通用浏览器/服务云)模式,以数据为核心,结合相关技术,实现了对二三维一体化WebGIS空间数据的统一管理。
3二三维空间数据的一体化组织
3.1二维空间数据的组织。二维空间数据的组织采用二维GIS软件ArcGIS来进行,ArcGIS是一款成熟稳定、功能强大、应用广泛的GIS软件,其优点无需多言。底层数据库采用Oracle10g,以表(Table)和字段(Field)的形式存储二维空间信息与属性信息。遵从ArcGIS的数据存储惯例,二维空间信息均存储于各表的“Shape”字段,相关属性信息存储于同一张表的其他字段。对二维空间数据的存储与读取采用空间数据引擎ArcSDE来实现,然后把对空间数据的各种操作以WebService形式通过ArcGISServer进行发布,Web客户端通过调用WebService即可实现对二维空间数据的访问与操作。
3.2三维空间数据的组织。三维空间数据的组织采用三维GIS软件Skyline来进行,Skyline也是一款成熟优秀的三维GIS软件,其优点在此不再赘述。底层数据库采用同一个Oracle数据库,也以表(Table)和字段(Field)的形式存储三维空间信息(包括三维空间坐标:x、y、h;三维空间姿态:航偏角Yaw、俯仰角Pitch、旋转角Roll)与模型信息,同一类别专题数据的二维空间信息与属性信息及三维空间信息与模型信息均以字段(Field)形式存储于同一张表(Table),例如供水管线的二三维信息均存储于表TGSPIPELINE。数据表结构截图如图1所示。
对于三维模型数据,具体到本文的城市地下管线模型,对于管点模型,在专题数据入库时根据不同的管点类别将其赋予不同的管点模型并指向对应的URL路径;对于管线模型,在专题数据入库时根据不同的管线类别及管径可以设定管线模型剖面样式(形状及大小),也可以设定管线模型侧面的贴图样式(形状及颜色),这些信息与模型URL路径信息一样存储于同一张表。前台绘制时,系统会实时读取管线数据的三维空间信息及模型信息并将其放样显示成模型。三维模型及三维场景均以文件形式存储于服务器硬盘,Skyline可以利用TerraGate把三维模型数据以及三维场景数据(MPT文件)以WebService形式进行网络发布,利用TerraExplorer配置三维地图文档生成FLY文件(类似用ArcMap配置mxd文档)时,将某一类别管线数据的三维空间信息与模型信息均指向对应的Oracle表中的特定字段(如上文所述,某类管线表中模型数据字段里存储的即是已发布的对应管线模型的URL地址),最后,将TerraExplorer控件嵌入到开发的网页中并指向特定的FLY文件即可实现对三维空间数据的访问与操作[3]。
3.3二三维空间数据的一体化组织形式。本文所述的二三维数据一体化组织形式的关键点即在于同一类别专题数据的二维空间信息与属性信息,以及三维空间姿态信息与模型信息均存储于同一张数据库表。二三维数据一体化组织形式如图2
所示。
4二三维数据一体化的应用实践
4.1数据显示层面的实时联动。如前文所述,前台网页中二维地图插件和三维地图插件对数据的显示都是通过实时访问各自发布的地图服务来实现的。地图服务是实时发布的,而各自的地图服务又来源于同一个数据库,某类专题数据的二三维空间信息又来源于同一张数据表,所以从后台机制上保证了数据显示时内容的一致与时间的同步。前台网页具体实现而言,二三维联动系统中,通过坐标转换及联动模式下二三维交互时的事件触发机制保证两者地图视图显示的同步。本文结合的实际应用中,二三维地图均采用国家80坐标系,在各自的鼠标事件响应函数中,以及视图刷新事件响应函数中均建立了坐标传输机制,通过当前视图的中心点(CenterSign)及当前视窗(Envelope)来控制两者中心位置与视图范围变化的一致性[4]。数据显示层面的一体化效果如图3所示。 另外,本文结合的实际应用中,前台网页基于Silverlight开发,二维及三维地图控件均放置于Grid控件中,通过简单的鼠标操作即可实现二维或三维地图窗口的隐藏与显现,从而在系统界面上可以在二维、三维、二三维联动三种模式之间的自由切换,实现了二维WebGIS、三维WebGIS、二三维联动WebGIS的“三合一”,极大地满足了用户需求。切换形式如图3左下角所示。
4.2数据操作层面的一体化
由于二维与三维的相关属性数据都存储在同一张数据表中,这种形式保证了二三维平台在进行某类专题数据的属性查询、空间分析等操作时针对的都是同一张数据表。本文结合的实际应用中,属性查询时,在三种模式下均可实现且结果完全一致;空间分析时,由于三维GIS空间分析的局限性,空间分析功能通过二维平台来实现,三维平台通过动态数据加载功能实时加载并直观展示二维空间分析的结果,达到了数据操作层面的一致性[5]。数据操作层面的一体化效果如图4所示。
4.3数据的同步更新维护
专题数据的实时更新与维护是城市级别GIS应用的一个关键功能。传统二维桌面GIS在数据更新维护方面的技术已经十分成熟,二维WebGIS也实现了在线编辑功能,而三维WebGIS的在线编辑技术尚未完善[6]。鉴于上述原因并结合管线管理业务需求,在本文结合的实际应用中,另外开发了一个配套的桌面版二三维一体化管线数据实时批量更新工具。根据《天津市地下管线工程现状及竣工数据汇交规定》(2009),上交至管理部门准备入库更新的批量管线数据均为MDB格式,包含完整的管线管点坐标信息及埋深、管径等属性信息。利用此工具导入MDB数据,通过识别、计算并赋值到相应字段,即可以生成前文所述专题数据表并导入更新至服务器Oracle数据库。管线类专题数据表涉及的二维空间信息字段即为ArcGIS空间数据格式常用的SHAPE字段,三维空间信息字段为起止点空间坐标,以及根据管线起止点空间坐标计算的管线模型的roll、pitch、yaw三个空间姿态角度值等,三维模型字段为其管线类别对应的模型文件存储路径、模型剖面信息、模型侧面信息等。
5结语
本文阐述了一种二三维一体化WebGIS的空间数据组织形式,有效解决了传统二三维一体化GIS中二维空间数据与三维空间数据存储、管理不一致的问题,实现了二三维空间数据组织的真正一体化。通过实践证明,本文阐述的二三维一体化WebGIS空间数据组织形式是可行的、有效的。同时,本文所述的空间数据组织形式仍然存在待解决的问题,比如当出现新的专题数据类别时,无法基于B/S架构实现模型数据的动态更新等,这也是今后的努力方向。本文旨在提出一种二三维一体化WebGIS空间数据组织形式,为城市GIS二三维一体化的研究提供一种借鉴。
参考文献:
[1]周顺平,魏利萍,万波,等.多源异构空间数据集成的研究[J].测绘信息与工程,2005,30(4):30-32.
[2]解岩,DOA架构下二三维GIS一体化机制研究[D].成都:成都理工大学,2013.
[3]钟海东,吴健平,李平等.基于Skyline和视频监控的三维WebGIS应用研究[J].微计算机信息,2011,5:20-23.
[4]閔星,曹伟,蒋华.基Silverlight的二三维联动WebGIS的设计与实现[J].城市勘测,2014,1:52-55.
[5]罗智勇,罗娟,赖德军.RIA技术方案下的插件式WebGIS系统架构设计[J].测绘科学,2012(11):160-163.
[6]高飞,尤磊,阮红利.基于开源项目的二三维联动GIS系统的设计与实现[J].测绘科学,2009(10):144-145.