专利名称:基于SVG的WebGIS系统及相应的能耗监控系统的制作方法
技术领域:
本发明涉及互联网络地理信息系统应用技术领域,特别涉及一种基于SVG的WebGIS系统及相应的能耗监控系统。
背景技术:
随着Internet技术的发展,互联网络地理信息系统(webGIS)成为当今地理信息系统(GIS,Geographic Information System)的热点。万维网地理信息系统的主要发展方向之一是多元数据访问,它要求在分布式网络中,空间数据能够达到开放,通过交换格式能够访问分布式网络中的任何数据。目前国内外的WebGIS基本采用两种地图生成技术,即栅格图形技术和矢量图形技术。其中,栅 格图形技术的缺点是无法将文本数据和几何表现形式分离,网络传输数据量大,交互性差,且生成栅格图形需要服务器端进行大量的计算,不利于GIS多元化多平台的发展和普及。相比于栅格图形技术,矢量图形技术具有的优点为:矢量图形技术中采用的可升级矢量图形(SVG, Scalable Vector Graphic)是一个开放的二维矢量图形格式,是扩展标记语言XML的一个应用;SVG具有任意缩放性、文件尺寸小、易生成、易修改性、强交互性、文本独立性、超链接性、中立性、平台无关性等特点,因此在webGIS中,将地理空间数据编码成SVG格式来进行空间技术存储、传输和表现,可有效地消除针对现有专有空间数据格式所产生的数据传播中的问题,此外,SVG中的图形元素具有动画功能,据此可以产生动画地图,使客户端用户面前的地图更具有表现力,因此将SVG用于WebGIS,具有非常重要的意义。目前,在GIS系统中,通常有三种数据管理方式,S卩:扁平文件系统式、混合式、纯数据库式。其中,扁平文件系统用按照某种结构组织起来的文件来存储数据,文件为空间数据文件和属性数据文件,数据的管理(即对文件的操作)通过自己编写程序来进行。混合式采用文件和关系数据库两种形式,关系数据库用来存储有固定长度的属性数据,如文本等,由于空间数据和某些属性数据的数据量过大,长度变化范围宽,不便于传统关系数据库来存储,故仍然采用文件来存储,通过编写程序来管理。或者对于空间数据,可以把变长的空间数据分解成固定场的空间数据,再用数据库进行存储,但这样的空间数据库会有很多表存在关联关系,而关联是数据库中开销很大的操作,对服务器要求很高。全数据库式用改进后的关系数据库来存储全部数据,这种改进后的数据库在存储和访问变长字段时也具有较高的效率,且对数据的管理不需要用户自己变成实现,但是对于数据长度完全不同的数据存储就要不断的新增字段来进行存储,因此对于长度不固定的数据存储,数据库并不是一个明智的选择。所以通常将属性数据存储在关系数据库中,借助数据库管理系统的组织、查询、优化和并发控制等优点很方便的管理属性数据,而空间数据使用文件形式存储,这就是混合式的存储方法。
现有的WebGIS有以下问题:
第一:现有WebGIS的数据存储结构没有采用标准化的存储规则,使其存储和读取不具有通用性,并且数据不具有扩展性。第二:对地理空间数据仅进行一次数据缓存储数据,存在即时数据生成现象,这样服务器和数据库的压力会非常大,用户服务使用地图时就容易出现空白区域;
第三:现有的地理空间数据,存在一定的封闭性。
发明内容
本发明的目的在于提供一种基于SVG的WebGIS系统,以提高SVG的WebGIS系统的性能。本发明的另一目的在于提供一种基于SVG的WebGIS系统的能耗监控系统,以实现对能耗的图形化的监测管理。为了实现上述目的,本发明公开了一种基于SVG的WebGIS系统,包括客户端和服务器端,其中:
所述服务器端包括数据持久层、应用逻辑层以及Web服务接口 ;所述数据持久层与所述应用逻辑层之间进行交互;
所述数据持久层包括ESRI Shape 空间数据文件系统、属性数据库以及PEMLW文件系统;所述应用逻辑层包括Shape文件转换器、SVG组装器以及数据缓存管理器;其中:
所述ESRI Shape空间数据文件系统存储空间几何地理数据;
所述属性数据库存储空间几何地理数据的图元的属性数据;
所述PWMLW文件系统存储空间地理数据呈现的样式、图层、结构信息;
所述Shape文件转换器将所述ESRI Shape空间数据文件系统中的几何地理数据的格式从Shape文件格式转换为SVG格式;
所述SVG组装器根据所述PWMLW文件系统存储的空间地理数据呈现的样式、图层、结构信息,将经所述Shape文件转换器转换后的SVG格式的几何地理数据与所述属性数据库存储的空间几何地理数据的图元的属性数据进行组装,合并成完整的SVG元素,并将每个完整的SVG元素再次进行组装,直至形成一完整的SVG地 所述客户端与所述服务器端之间通过所述Web服务接口进行交互,所述客户端通过所述Web服务接口向所述服务器端发送请求,所述服务器端通过所述Web服务接口向所述客户端发送SVG地 所述数据缓存管理器对所述客户端请求过的数据进行缓存,当同一资源再一次被访问时,直接从所述数据缓存管理器中读取数据迅速返回给所述客户端。较佳地,所述数据持久层还包括预生成空间数据库,所述ESRI Shape空间数据文件系统中的几何地理数据从Shape文件格式转换为SVG格式后存储在所述预生成空间数据库中。较佳地,所述SVG组装器根据所述PWMLW文件系统存储的空间地理数据呈现的样式、图层、结构信息,将存储在所述预生成空间数据库中的SVG格式的几何地理数据和所述属性数据库存储的空间几何地理数据的图元的属性数据进行组装,合并成完整的SVG元素,并将每个完整的SVG元素再次进行组装,直至形成一完整的SVG地图。较佳地,所述SVG组装器将存储在所述预生成空间数据库中的SVG格式的几何地理数据和所述属性数据库存储的空间几何地理数据的图元的属性数据进行组装,合并成完整的SVG元素,并将每个完整的SVG元素再次进行组装,直至形成一完整的SVG地图,具体包括:
1)所述SVG组装器根据所述PWMLW文件系统存储的空间地理数据呈现的样式、图层、结构信息将所述预生成空间数据库中的SVG格式的几何地理数据和所述属性数据库存储的空间几何地理数据的图元的属性数据进行组装,形成多个地物实体对象;
2)所述SVG组装器根据所述PWMLW文件系统存储的空间地理数据呈现的样式、图层、结构信息将若干所述地物实体对象进行组装,形成多个图层对象;
3)所述SVG组装器根据所述PWMLW文件系统存储的空间地理数据呈现的样式、图层、结构信息将若干所述图层对象进行组装,形成多个地图对象;
4)循环I)至3),直至形成SVG地图。较佳地,所述应用逻辑层还包括地图数据更新器,用于更新所述ESRI Shape空间数据文件系统中的数据。较佳地,所述客户端包括浏览器,所述服务器端通过所述Web服务接口向所述客户端发送的SVG地图通 过所述浏览器显示。较佳地,所述客户端还包括SVG图形查看器,所述SVG图形查看器作为一插件安装在所述浏览器上,当所述浏览器不支持SVG格式时,所述SVG图形查看器为不支持SVG格式的浏览器提供支持功能。较佳地,所述客户端还包括JavaScript解析器,所述JavaScript解析器在所述浏览器以及所述SVG图形查看器上直接执行,所述JavaScript解析器对所述服务器发送的SVG地图进行解析,并将解析后的地图填充到SVG图形查看器中;其通过所述JavaScript解析器实现对SVG地图的平移、滚动缩放、属性信息查询、图层显示控制。较佳地,所述客户端通过所述JavaScript解析器与所述服务器端进行异步通讯。为了实现上述目的,本发明还公开了一种上述基于SVG的WebGIS系统的地图查询方法,其特征在于,包括以下步骤:
所述客户端通过所述Web服务接口发送请求给所述服务器端;
所述数据缓存管理器收到请求后,根据图层、坐标范围、缩放等级参数,先从数据缓存管理器中检索地图数据,如果找到匹配的则直接将此数据返回给所述客户端,否则就从所述数据持久层中进行检索,并将检索出的几何地理数据交给所述Shape文件转换器;
所述Shape文件转换器将所述几何地理数据的格式从Shape文件格式转换为SVG格式后发送给所述SVG组装器;
所述SVG组装器根据所述PWMLW文件系统存储的空间地理数据呈现的样式、图层、结构信息,将经所述Shape文件转换器转换后的SVG格式的几何地理数据与所述属性数据库存储的空间几何地理数据的图元的属性数据进行循环组装,直至完成所需的SVG地图文档;所述SVG组装器将组装好的SVG地图文档进行GZIP压缩后返回给所述客户端,同时发送给所述数据缓存管理器进行缓存。为了实现上述目的,本发明还公开了一种基于SVG的WebGIS系统的能耗监控系统,利用上述的WebGIS系统进行能耗监控,该基于SVG的WebGIS系统的能耗监控系统将SVG地图对应的空间几何地理数据分为区域层、绿化层、河流湖泊层、道路层、建筑物层、桥梁层、公交站层、路灯层、摄像监控层、水能设备层、水能管线层、水能传输层、电能设备层、电能缆线层、电能通讯层、燃气设备层、燃气管线层,其SVG地图也相应地分为区域图层、绿化图层、河流湖泊图层、道路图层、建筑物图层、桥梁图层、公交站图层、路灯图层、摄像监控图层、水能设备图层、水能管线图层、水能传输图层、电能设备图层、电能缆线图层、电能通讯图层、燃气设备图层、燃气管线图层;在使用该基于SVG的WebGIS系统的能耗监控系统时,只需在客户端切换需要关注的图层即可查看该图层中相应的信息。与现有技术相比,本发明的有益效果如下:
1、标准化。采用基于W3C标准的数据结构作为地图的呈现形式,图形美观、文件标准统一、可读性强、灵活易用。2、高性能。由于对地理空间数据进行了多重缓存处理和预生成处理,基本不存在即时数据生成的现象,服务器和数据库的压力大大降低,用户使用地图时不会出现空白区域,体验非常好。3、轻便性。数据量和程序控制代码量少,在保证功能完善的基础上,执行效率高,占用资源少。4、及时性。SVG几何数据和属性数据是相对分离的,更新地形数据时不会影响至IJ相关的附加属性信息,所以地图数据的更新操作相对简单很多。5、高扩展性。与传统的GIS的内容简单和千般一律的单调界面相比,本系统可提供丰富的动态的和个性定制的数据信息,且SVG具有任意缩放性、易修改性、强交互性、文本独立性、超链接性、中·立性、平台无关性等特点,我们提供了很多功能上的扩展,用户可以很方便的将自己的应用和本系统集成起来。6、开放性。本发明使用Web Service处理地理空间数据,提供了一个开放的、可互操作、动态链接的空间信息服务平台。同时,Web Service是基于XML文档进行服务描述、服务请求和反馈结果的,与同样基于XML的SVG可以无缝集成。7、用户友好性。本发明在浏览器端增加了一个层一Ajax (AsynchronousJavaScript and XML),用户触发的请求就交予这个引擎处理,它负责向服务器发送请求,服务器传回的是业务数据而非HTML页面,引擎接收之后,进行渲染,通过浏览器解析在页面上呈现出来,在WebGIS地图中使用Ajax技术进行局部刷新可以大大提高系统的用户友好性,用户甚至不知道浏览器正在于服务器通信。
图1为本发明具体实施例基于SVG的WebGIS的结构示意 图2为本发明具体实施例地理空间数据的结构示意 图3为本发明具体实施例查询方法的工作示意 图4为本发明提供的多级缓存的示意图。
具体实施方式
:下方结合附图和具体实施例对本发明做进一步的描述。
实施例如图1,一种基于SVG和空间数据库的WebGIS系统,包括客户端I和服务器端2 ;服务器端2包括数据持久层4、应用逻辑层3和Web服务接口 12 ;数据持久层4与应用逻辑层3之间进行数据交互,客户端I与服务器端2通过Web服务接口 12进行数据交互。如图1,数据持久层4包括ESRI Shape空间数据文件系统16、属性数据库10以及PEMLW文件系统9,其中:ESRI Shape空间数据文件系统16存储空间几何地理数据;属性数据库10存储空间几何地理数据的图元的属性数据;PEMLW文件系统9存储空间地理数据呈现的样式、图层、结构信息。其中,属性数据库10采用SQL Serve数据库,并且其可进一步包括SQL Serve数据库缓存单元,以起到加快数据库的响应速度的作用。如图1,所述应用逻辑层3包括数据缓存管理器5、Shape文件转换器8以及SVG组装器6 ;其中=Shape文件转换器8负责将ESRI Shape空间数据文件系统16中的几何地理数据的格式从Shape文件格式转换为SVG格式;SVG组装器6根据所述PWMLW文件系统9存储的空间地理数据呈现的样式、图层、结构信息,将经所述Shape文件转换器8转换后的SVG格式的几何地理数据与所述属性数据库10存储的空间几何地理数据的图元的属性数据进行组装,合并成完整的SVG元素,并将每个完整的SVG元素再次进行组装,直至形成一完整的SVG地 所述客户端I通过所述Web服务接口 12向所述服务器端2发送请求,所述服务器端2通过所述Web服务接口 12向所述客户端I发送SVG地 所述数据缓存管理器5对所述客户端I请求过的数据进行缓存,当同一资源再一次被访问时,直接从所述数据缓存管理器5中读取数据迅速返回给所述客户端I。并且为了进一步提高服务器端的响应能力,本发明采用了三级高速缓存技术,最大限度的提高服务器的响应能力。三级高速缓存分别位于数据持久层4的空间数据缓存,应用逻辑层3的SVG地图缓存和客户端缓存,前两种缓存都是基于一个存储键/值对的hashmap,数据是以key/value的配对方式存在的,就像一个很大的Hash表,见图4。数据持久层的属性数据库10主要应用SQLSERVER数据库缓存依赖,GIS服务器的性能瓶颈大部分是在查询数据库的时候,所以针对数据库的缓存非常的重要,本发明通过一系列配置实现了 SQL Server数据库的缓存,当数据表没有更新时,就从缓存中读取,当有数据更新时才从数据库中读取数据。比如在GIS中经常查询的建筑物的基本信息,我们将建筑物信息数据表缓存起来,当有建筑物信息的请求道来时,就不需要再从数据库中读取了,加快了系统的响应速度。数据库持久层的空间地理数据和应用逻辑层采用了分布式内存对象缓存技术。其中,应用逻辑层还包括一负载平衡管理器,负载平衡顾名思义就是负责处理服务器端的负载平衡,它对接受到的请求进行分析,然后将请求发送到负载压力较小的服务器进行处理,从而提高服务器的响应速度。所谓分布式就是说可以通过多台服务器来组建一个更大的缓存服务器,通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高web应用程序的响应速度。比 如客户端请求图层L、缩放等级A、坐标范围C内的数据,数据缓存管理器会先查看分布式内存对象缓存系统中是否有缓存,如果有就直接从缓存中取出数据;如果没有,就从数据库中取出数据返回给负载平衡管理器并将请求的数据缓存到分布式内存对象缓存系统中,这样下一次请求相同的数据就可以直接从内存中读取而不用再去查询数据库了,一旦对数据有更新,同时更新数据库和内存中的缓存,保证了数据的准确性和同步性。通过大量的测试和实践,应用逻辑层的高速缓存技术可以将单台服务器的并发访问数从20提高到1000左右,也就是提高了 50倍,这是一个非常可观的性能提升。客户端缓存主要是通过浏览器和SVG图形查看器本身的缓存来实现的。为了提高系统的处理速度,数据持久层4还包括预生成空间数据库11,预生成空间数据库11存储ESRI Shape空间数据文件系统16中的几何地理数据经Shape文件转换器转换,并经过整理后得到的SVG格式的图元文档;该预生成空间数据库11还包括空间几何数据缓存单元,其可加快空间几何数据的处理速度。通过Shape文件转换器,将ESRI Shape文件系统中的空间几何数据单元和对应的属性数据进行拼装并转化为SVG格式的元素片段,经过处理后存储于预生成空间数据库中集中管理,当有数据请求时,直接访问预生成空间数据库。 其中,SVG组装器6的组装方式为:SVG组装器6根据PWMLW文件系统9中存储的空间地理数据呈现的样式、图层、结构信息,将存储在预生成空间数据库11中的SVG格式的几何地理数据和属性数据库10中存储的空间几何地理数据的图元的属性数据进行组装,合并成完整的SVG元素,并将每个完整的SVG元素再次进行组装,直至形成一完整的SVG地图。具体包括以下过程:
DSVG组装器6根据PWMLW文件系统9中存储的空间地理数据呈现的样式、图层、结构信息将预生成空间数据库11中的SVG格式的几何地理数据和属性数据库10中存储的空间几何地理数据的图元的属性数据进行组装,形成多个地物实体对象;
2)SVG组装器6根据PWMLW文件系统9中存储的空间地理数据呈现的样式、图层、结构信息将若干所述地物实体对象进行组装,形成多个图层对象;
3)SVG组装器6根据PWMLW文件系统9中存储的空间地理数据呈现的样式、图层、结构信息将若干所述图层对象进行组装,形成多个地图对象;
4)循环I)至3),直至形成SVG地图。在一些实施例中,应用逻辑层3还包括地图数据更新器7,负责更新ESRI Shape空间数据文件系统16中的Shape文件数据。如图1,所述客户端I包括:浏览器13,服务器端2通过所述Web服务接口 12向所述客户端I发送的SVG地图通过浏览器13进行显示,因此所述浏览器13是访问基于SVG的WebGIS的工具。为了增强系统的兼容性,在较佳实施例中,所述客户端I还包括SVG图形查看器15,其为安装在浏览器上的一个插件,SVG图形查看器15为某些不支持SVG文档格式的浏览器提供支持功能。并且,在较佳实施例中,所述客户端I还包括Javascript解析器14,其用于实现SVG WebGIS的平移、滚动缩放、属性信息查询、图层显示控制、与服务器异步通讯、解析服务器端发送来的SVG文档并填充到SVG图形查看器中的操作,所述JavaScript解析器14还可以用于定义与SVG地图交互的其他应用程序接口, 供其他地图应用开发人员进行调用,进而开发出功能更丰富的SVG地图应用。所述客户端I还包括客户端缓存单元,所述客户端缓存单元加快客户端的响应处理速度。以下对本发明形成SVG地图的原理进行具体说明:
地理空间数据是用来描述地理空间现象的,一般分为空间几何数据和属性数据,由于空间几何数据比较复杂,且SVG目前仅支持一些基本的图形元素,所以将空间几何数据按空间实体模型来组织(所谓空间实体模型即每个空间实体对象的接点都是直接存储在实体对象内部的,独立的),具体实施为:将现实世界中的地物分为简单地物与复杂地物两大类,简单地物又分为点状体悟、线状地图、面状地物,复杂地物是有多个简单地图构成。另外,各地物实体由目标识别码、描述该地物的集合数据和属性数据组成。和一般GIS系统(如Arc)不同,在基于SVG的WebGIS中一个图层可以包含不同类型的地理实体,而若干个图层可组成一个地图。如图2所示,一个地图对象可分为若干个图层对象,而某一个图层对象又包括若干个地物对象,所有地图对象均采用SVG所提供的分组标签来表示,用标签的ID属性来表示对象编号,如:约定地图对象以“M”字母开头;图层对象以“L”字母开头;实体对象以“R”标示,针对点状地物、线状地物、面状地物、复杂地物分别以“RP”,“RL”,“RA”,“RC”开头。SVG提供的图形元素可直接描述这些地物:点状地物用symol元素定义,然后用use元素引用,线状地物用circle, rect, polyline, path等元素表示,面状地物用circle, rect, polyline, path 等兀素表不。基于SVG的WebGIS地图数据存储方法:各地物实体由目标识别码、描述该地铁的集合数据和属性数据组成,在基于SVG的WebGIS中一个图层可以包含不同类型的地理实体,而若干个图层可组成一个地图,空间地理数据以Shape文件形式存储在ESRI Shape空间数据文件系统中,属性数据存储于属性数据库10中,属性数据库10为关系数据库;所述Shape文件使用简单的非拓扑格式存储地理对象的位置信息和属性信息,Shape文件是矢量格式地图文件,其坐标为笛卡尔坐标,在Shape地图文件中,图层中每一个地理要素的几何形状以一组矢量坐标形式存储,对应属性信息存放在与Shape文件相连的属性数据库(dBase)的数据表中,并通 过唯一的标识进行关联;每一个Shape文件存储某一种类型的地理要素,每一个要素相当于数据表中的一行记录,ESRI Shape文件格式将位置信息和属性信息分别存放在一组扩展文件名特定的文件中,这些文件存放在同一目录中,这组文件包含一个主文件,一个dBase表格文件和一个索引文件,
主文件以.shp为扩展名,是一个直接存取的记录长度不一的文件,其中每一条记录存储一个对象的几何信息;
索引文件以.shx为扩展名,在索引文件中,每一条记录保存主文件中对应的一条记录其相对于主文件起始位置的偏移值;
dBase表格文件以.dbf为扩展名,它包含对象的属性信息,一条记录对应一个对象,属性和对象的联系是基于记录号(record number)的,属性记录在dbase表格文件的存储顺序与其对应的地理位置信息记录在主文件中的顺序一致。所述属性数据存储时在数据库中建立关系表,每个图元都有对应的一个数据属性链接,在表中存储该类图元所有实例的属性。在WebGIS使用Shape数据时,将Shape文件通过工具转换为SVG格式的文档,整理后存储在预生成空间数据库,再通过SVG组装器将其和对应的属性数据组装起来,直至完成所需的SVG地图文档。如图3,基于SVG的WebGIS系统的地图查询方法,其包括如下步骤:
S1:客户端通过所述Web服务接口发送请求给所述服务器端;
52:数据缓存管理器收到请求后,根据图层、坐标范围、缩放等级参数,先从数据缓存管理器中检索地图数据,如果找到匹配的则直接将此数据返回给所述客户端,否则就从所述数据持久层中进行检索,并将检索出的几何地理数据交给所述Shape文件转换器;
53:Shape文件转换器将所述几何地理数据的格式从Shape文件格式转换为SVG格式后发送给所述SVG组装器;
54=SVG组装器根据所述PWMLW文件系统存储的空间地理数据呈现的样式、图层、结构信息,将经所述Shape文件转换器转换后的SVG格式的几何地理数据与所述属性数据库存储的空间几何地理数据的图元的属性数据进行循环组装,直至完成所需的SVG地图文档;
55=SVG组装器将组装好的SVG地图文档进行GZIP压缩后返回给所述客户端,同时发送给所述数据缓存管理器进行缓存。其中,在SVG中定义自己的坐标系,是在SVG中定义坐标变换(transform),其含义类似于解析几何中的坐标变换和映射规则,可对一个或一组图形对象进行平移、缩放、旋转、错切,具体的转换方式如下:translate(x, y):图形元素按指定数值分别在X、Y轴方向进行偏移;scale (x,y):图形元素 的按指定数值分别在X、Y轴方向进行缩放,如果只指定一个值,它将用于两个方向;rotate(n):图形元素按指定的角度进行旋转。在浏览器中,SVG文件的绘图区域在一个确定的矩形视口,<svg>标记有“width”和”height”属性,它们用来标记SVG图形渲染时的视口大小;访问SVG文档时,客户端首先初始化视口,建立视口坐标系,其默认远点在视口的左上角,X轴正方向水平向右,Y轴正方向竖直向下。通过控制SVG文档的根元素属性viewbox,改变视窗口的左上角坐标和右下角坐标,实现图形的缩放显示;SVG标签的viewbox属性允许水平或垂直移动和缩放原始图形,这个属性包含4个数字来指定左上角坐标和右下角坐标,这些坐标可以是经过平移和缩放变换计算之后的新视窗坐标。在基于SVG的WebGIS系统中还可以进行地物属性数据的查询,具体为:属性数据与几何图形数据分开存储,SVG文档中仅存储地物的图形几何数据,而属性数据存放在服务器端的属性数据库中,两者通过“地物标识号”进行连接,通过JavaScript程序通过委托方式给SVG地图中的每个地物对象增加一个鼠标单击事件,当用户点击一个地物时,JavaScript会获取到当前地物的“地物标识号”,然后通过异步通讯技术将“地物标识号”发送给服务器进行查询,服务器返回数据以后再以弹出浮动层的形式显示出来。并且还能进行地层的控制,具体为:首先通过JavaScript的getElementByld方法找到g分组标签,然后设置该元素的可视(Visibility)属性值为隐藏(hidden)或可见(visible)即可实现对图层关闭和显示控制;其中,getElementByld是JavaScript中的语法,其含义是通过元素的ID特性来获取元素。本发明在基于SVG的WebGIS系统的基础上,还提供了一种的基于SVG的WebGIS系统能耗监控系统,该基于SVG的WebGIS系统的能耗监控系统将SVG地图对应的空间几何地理数据分为区域层、绿化层、河流湖泊层、道路层、建筑物层、桥梁层、公交站层、路灯层、摄像监控层、水能设备层、水能管线层、水能传输层、电能设备层、电能缆线层、电能通讯层、燃气设备层、燃气管线层,其SVG地图也相应地分为区域图层、绿化图层、河流湖泊图层、道路图层、建筑物图层、桥梁图层、公交站图层、路灯图层、摄像监控图层、水能设备图层、水能管线图层、水能传输图层、电能设备图层、电能缆线图层、电能通讯图层、燃气设备图层、燃气管线图层;在使用该基于SVG的WebGIS系统的能耗监控系统时,只需在客户端切换需要关注的图层即可查看该图层中相应的信息。下面以两个操作案例说明下基于SVG的WebGIS在能耗监测管理分析平台中的应用:
1.用户切换出”水能设备层”,地图中会将和水相关的能源设备(水表、采集器、信号中继器、信号集中器)图标显示出来,用户通过缩放、平移找到自己要关注的水能设备,也可以通过综合查询定位到要关注的水能设备,点击图标会将该设备的基本信息、水用量柱状图表展示出来;
2.用户切换出”摄像监控层”,地图中会将监控设备的图标显示出来,用户通过缩放、平移找到自己要关注的监控设备,也可以通过综合查询定位到要关注的监控设备,点击图标会将弹出一个窗口,里面显示的是这个监控设备的视频画面。以上只是两个操作案例,用户还可以使用该基于SVG的WebGIS系统的能耗监控系统对其它图层信息进行查看。本发明通过在能耗监测管理分析平台中集成基于SVG的WebGIS应用,实现图形化的监测管理,可提 供直观、简明、快捷的数据信息查询和决策支持服务,同时将系统中不相关的功能模块整合到了一起,用户在地图界面上只需切换到需要关注的图层即可获取相应的信息,提高用户的管理效率。本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式
。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
权利要求
1.一种基于SVG的WebGIS系统,其特征在于,包括客户端和服务器端,其中: 所述服务器端包括数据持久层、应用逻辑层以及Web服务接口 ;所述数据持久层与所述应用逻辑层之间进行交互; 所述数据持久层包括ESRI Shape空间数据文件系统、属性数据库以及PEMLW文件系统;所述应用逻辑层包括Shape文件转换器、SVG组装器以及数据缓存管理器;其中: 所述ESRI Shape空间数据文件系统存储空间几何地理数据; 所述属性数据库存储空间几何地理数据的图元的属性数据; 所述PWMLW文件系统存储空间地理数据呈现的样式、图层、结构信息; 所述Shape文件转换器将所述ESRI Shape空间数据文件系统中的几何地理数据的格式从Shape文件格式转换为SVG格式; 所述SVG组装器根据所述PWMLW文件系统存储的空间地理数据呈现的样式、图层、结构信息,将经所述Shape文件转换器转换后的SVG格式的几何地理数据与所述属性数据库存储的空间几何地理数据的图元的属性数据进行组装,合并成完整的SVG元素,并将每个完整的SVG元素再次进行组装,直至形成一完整的SVG地图; 所述客户端与所述服务器端之间通过所述Web服务接口进行交互,所述客户端通过所述Web服务接口向所述服务器端发送请求,所述服务器端通过所述Web服务接口向所述客户端发送SVG地图; 所述数据缓存管理器对所述客户端请求过的数据进行缓存,当同一资源再一次被访问时,直接从所述数据缓存管理器中读取数据迅速返回给所述客户端。
2.根据权利要求1所述的基于SVG的WebGIS系统,其特征在于,所述数据持久层还包括预生成空间数据库,所述ESRI Shape空间数据文件系统中的几何地理数据从Shape文件格式转换为SVG格式后存储在所述预生成空间数据库中。
3.根据权利要求2所述的基于SVG的WebGIS系统,其特征在于,所述SVG组装器根据所述PWMLW文件系统存储的空间地理数据呈现的样式、图层、结构信息,将存储在所述预生成空间数据库中的SVG格式的几何地理数据和所述属性数据库存储的空间几何地理数据的图元的属性数据进行组装,合并成完整的SVG元素,并将每个完整的SVG元素再次进行组装,直至形成一完整的SVG地图。
4.根据权利要求3所述的基于SVG的WebGIS系统,其特征在于,所述SVG组装器将存储在所 述预生成空间数据库中的SVG格式的几何地理数据和所述属性数据库存储的空间几何地理数据的图元的属性数据进行组装,合并成完整的SVG元素,并将每个完整的SVG元素再次进行组装,直至形成一完整的SVG地图,具体包括: .1)所述SVG组装器根据所述PWMLW文件系统存储的空间地理数据呈现的样式、图层、结构信息将所述预生成空间数据库中的SVG格式的几何地理数据和所述属性数据库存储的空间几何地理数据的图元的属性数据进行组装,形成多个地物实体对象; .2 )所述SVG组装器根据所述PWMLW文件系统存储的空间地理数据呈现的样式、图层、结构信息将若干所述地物实体对象进行组装,形成多个图层对象; .3)所述SVG组装器根据所述PWMLW文件系统存储的空间地理数据呈现的样式、图层、结构信息将若干所述图层对象进行组装,形成多个地图对象; .4)循环I)至3),直至形成SVG地图。
5.根据权利要求4所述的基于SVG的WebGIS系统,其特征在于,所述应用逻辑层还包括地图数据更新器,用于更新所述ESRI Shape空间数据文件系统中的数据。
6.根据权利要求1所述的基于SVG的WebGIS系统,其特征在于,所述客户端包括浏览器,所述服务器端通过所述Web服务接口向所述客户端发送的SVG地图通过所述浏览器显/Jn ο
7.根据权利要求6所述的基于SVG的WebGIS系统,其特征在于,所述客户端还包括SVG图形查看器,所述SVG图形查看器作为一插件安装在所述浏览器上,当所述浏览器不支持SVG格式时,所述SVG图形查看器为不支持SVG格式的浏览器提供支持功能。
8.根据权利要求7所述的基于SVG的WebGIS系统,其特征在于,所述客户端还包括JavaScript解析器,所述JavaScript解析器在所述浏览器以及所述SVG图形查看器上直接执行,所述JavaScript解析器对所述服务器发送的SVG地图进行解析,并将解析后的地图填充到SVG图形查看器中;其通过所述JavaScript解析器实现对SVG地图的平移、滚动缩放、属性信息查询、图层显示控制。
9.根据权利要求8所述的基于SVG的WebGIS系统,其特征在于,所述客户端通过所述JavaScript解析器与所述服务器端进行异步通讯。
10.一种如权利要求1所述的基于SVG的WebGIS系统的地图查询方法,其特征在于,包括以下步骤: 所述客户端通过所述Web服务接口发送请求给所述服务器端; 所述数据缓存管理器收到请求后,根据图层、坐标范围、缩放等级参数,先从数据缓存管理器中检索地图数据,如果找到匹配的则直接将此数据返回给所述客户端,否则就从所述数据持久层中进行检索,并将检索出的几何地理数据交给所述Shape文件转换器; 所述Shape文件转换器将所述几何地理数据的格式从Shape文件格式转换为SVG格式后发送给所述SVG组装器; 所述SVG组装器根据所述PWMLW文件系统存储的空间地理数据呈现的样式、图层、结构信息,将经所述Shape文件转换器转换后的SVG格式的几何地理数据与所述属性数据库存储的空间几何地理数据的图元的属性数据进行循环组装,直至完成所需的SVG地图文档; 所述SVG组装器将组装好的SVG地图文档进行GZIP压缩后返回给所述客户端,同时发送给所述数据缓存管理器进行缓存。
11.一种基于SVG的WebGIS系统的能耗监控系统,利用如权利要求1所述的WebGIS系统进行能耗监控,其特征在于,该基于SVG的WebGIS系统的能耗监控系统将SVG地图对应的空间几何地理数据分为区域层、绿化层、河流湖泊层、道路层、建筑物层、桥梁层、公交站层、路灯层、摄像监控层、水能设备层、水能管线层、水能传输层、电能设备层、电能缆线层、电能通讯层、燃气设备层、燃气管线层,其SVG地图也相应地分为区域图层、绿化图层、河流湖泊图层、道路图层、建筑物图层、桥梁图层、公交站图层、路灯图层、摄像监控图层、水能设备图层、水能管线图层 、水能传输图层、电能设备图层、电能缆线图层、电能通讯图层、燃气设备图层、燃气管线图层;在使用该基于SVG的WebGIS系统的能耗监控系统时,只需在客户端切换需要关注的图层即可查看该图层中相应的信息。
全文摘要
一种基于SVG的WebGIS系统,包括服务器端和客户端,所述服务器端进一步包括数据持久层、应用逻辑层和Web服务接口,所述客户端包括浏览器,其中,所述数据持久层存储空间几何地理数据,所述应用逻辑层将所述数据持久层中存储空的间几何地理数据从Shape文件格式转换为SVG格式,并最终形成SVG地图,所述客户端与所述服务器端之间通过所述Web服务接口进行交互,所述客户端通过所述Web服务接口向所述服务器端发送请求,所述服务器端通过所述Web服务接口向所述客户端发送SVG地图。本发明优点在于利用SVG标准性、高扩展性、数据量小等特点,将传统的GIS系统中长期积累的地理信息进行转换,使其能在网络终端展示出来供我们开发使用。
文档编号G06F17/30GK103226604SQ20131015248
公开日2013年7月31日 申请日期2013年4月27日 优先权日2013年4月27日
发明者毕俊人 申请人:上海先之决信息科技发展有限公司