引言

地震作为一种突发事件具有影响范围广、破坏性大、灾害信息复杂、灾害种类多样及救援难度大的特点(魏艳旭等,2014),因此当地震发生时,人们往往希望尽可能多地掌握震区人口、经济等情况,为随后地震应急救援工作的开展提供准确和全面的参考。地震专题图件因其直观、信息量大的优点,能及时有效地提供各类信息,在地震应急救援工作中发挥着重要作用(李金香等,2013)。尤其是根据地震参数采用适合震区的地震烈度衰减关系绘制成的地震影响范围图,为第一时间对灾区的影响范围和伤亡损失作出初步的评估提供了重要支撑(和朝霞等,2013),因此研究如何在地震发生后最短时间内快速有效地产出地震专题图具有重要意义。

目前普遍采用的专题图出图的方式有两种,一种是通过ArcMap调用各种矢量数据和属性数据,并在此基础上实现快速出图,但是这种出图方式对制图人员的专业要求较高,需要制图人员具有一定的地理基础知识并且熟悉相关出图软件,同时地震发生初期需要尽快了解震区相关情况,因此要求专题图的产出尽可能快速,而人工出图需要较长的时间制作专题图,无法满足快速出图的要求。另一种是基于浏览器调用网络地图(例如Google等)并在此基础上产出专题图,这种方式提供了丰富的地理信息,更利于专题图的产出,但是这种方式产出的专题图在比例尺、图例、符号化等图面整饰方面有诸多的限制,同时还依赖于网络的稳定性。以上两种方式各有优缺点,使用时也各受其限。为此,本文开发出一种出图方式以解决以上两种方式的限制,并通过使用公共地图摆脱保密数据限制的同时,再通过实现自动整饰、三要素自动获取等技术减少人工干预,在满足地震应急需求的基础上实现地震专题图的自动出图,提高了专题图的产出效率和出图速度。

1 天地图概述

2011年国家地理信息公共服务平台——“天地图”正式上线。“天地图”是基于互联网的基础地理信息服务网站,集成了海量基础地理信息资源(陈鑫祥等,2013)。“天地图”在服务器端采用金字塔式的瓦片存储方式,将地图按照不同级别切分为相同大小的切片,对相同级别的切片按照行列号规则统一存储(图1)(牛莹等,2014)。

2013年陕西地震局与陕西地理信息中心签署协议,在陕西地震局部署了“天地图-陕西”地图服务。“天地图-陕西”地图服务分为切片服务和实体服务两类,切片服务每一层级按照不同的比例尺存放,由上到下比例尺越来越大,最终构成金字塔结构进行切片组织和管理。每个切片都有对应行列值编号,系统通过调用相应编号来访问对应的切片。实体服务分为行政区划、交通、POI(兴趣点)等服务。通过将这些服务与陕西地震局收集到的相关地理要素进行关联和匹配,建立地震应急专题要素数据库,为地震专题图的产出提供非涉密的数据支撑。

图 1 天地图切片组织结构 Fig. 1The organization structure of TianDiTu (Map World) tiles
2 系统设计

本文涉及的专题图自动出图系统基于MyEclipse平台,系统分为3个组成部分:数据库采用Oracle11g,数据库监听采用Java语言实现,出图脚本采用Python脚本语言和ArcPy包构建。

2.1 ArcPy语言简介

ArcPy是ESRI公司从ArcGIS10开始发布的基于Python脚本语言的站点包,目的是为以实用高效的方式通过Python执行地理数据分析、数据转换、数据管理和地图自动化产出等功能。ArcPy集成了Python的特点:易于跨平台操作、占有资源较少、速度快,在自动产出、快速生成方面具有较大优势(周津津等,2014),因此本文用Python语言构建设计专题图自动出图系统,可缩短出图时间以满足地震应急的需求。

2.2 技术路线

地震发生后,陕西省地震局台网中心在进行地震速报的同时,将速报结果写入到地震速报信息中转表中。系统通过数据库监听技术定时监控数据库中的记录,当发现一条新纪录后触发出图脚本。脚本被触发后从数据库中读取地震三要素,首先根据地震位置进行是否需要生成地震影响场的判断,并确定相关影响场参数后生成地震影响场和震中。其次再按照地震位置调用省内、全国和全球不同专题图模板,对图名、比例尺、出图范围等要素进行修改整合后,导出专题图完成出图,并上传产出图件至共享FTP用于分发使用(图2)。

图 2 系统技术路线图 Fig. 2Technical route in the system
2.3 系统平台构建

系统编程基于MyEclipse平台,数据库使用Oracle11g,GIS平台使用ArcGIS软件。数据库监听基于Java语言通过TimerTask函数调用实现,自动出图使用Python脚本语言编写,影响场的生成、专题图整饰、专题图产出等GIS功能通过调用ArcPy包进行二次开发完成,通过cx_Oracle插件的调用实现对数据库的访问和操作,产出的专题图通过Commnos包上传至共享FTP。

3 系统实现
3.1 模板分类

因为地震震级不同、专题图是否产出影响场以及产出影响场的范围不同,地震专题图所涉及的专题图符号、地图比例尺、专题内容的详细程度等也有不同,因此需要按照地震震级和专题图的用途对专题图模板进行分类,提前制作好专题图模板。本系统根据中国地震局《破坏性地震应急专题地图产出流程与制图规范(试行)》对专题图的要求,结合陕西省天地图自身地理信息情况完成专题图模板的分类和制作,具体分类和模板样例见图3和图4。

图 3 模板分类 Fig. 3The classification of thematic map
图 4 专题图模板 Fig. 4The template of thematic map
3.2 数据库的建立

建立地震速报数据库表,用于获取和存储地震三要素,数据库表结构如表1所示。

表1 地震速报数据库表 Table 1 Data table of the earthquake quick report
3.3 地震三要素自动获取

系统使用TimeTask实现对地震速报库循环扫描,并判断是否有新的记录。初步定义系统每隔三分钟执行一次数据库扫描。当地震发生后由陕西省地震局台网中心确定地震三要素并写入地震速报数据库中,系统监测到数据库有新记录后调用Python脚本进行判断是否需要产出专题图,对于正式速报地震进行专题图产出工作,对于余震或自动速报则不触发响应。

3.4 影响场产出

本系统使用的地震影响场模型采用椭圆衰减模型(见公式1),并收集不同地区相关的衰减参数。系统获取地震三要素后首先判断地震落入到哪个分区,提取相应的衰减参数后按照公式计算生成影响场,并保存在fileGDB中,出图时将其导入到MXD模板中,最后成图。

长轴:Ia=L1+L2ML3Ln(R+L4)+ε
短轴:Ib=S1+S2MS3Ln(R+S4)+ε
(1)
3.5 专题图整饰和产出

系统首先对地震三要素进行空间分析判断,以此根据提前规划好模板的分类方式确定产出专题图的模板。然后对于每一个模板通过ListLayoutElements函数获取到模板图名、图例、产出时间等图面要素并对其进行修改。通过extent函数确定专题图的出图范围,具有影响场的专题图出图范围为影响场最外圈外切矩形的范围,对于无影响场产出的地震,其出图范围设定为模板原始范围。最后通过ExportToJPEG函数设定出图路径、文件名称、分辨率等要素并完成出图。

4 系统应用与测试

最后通过测试地震数据,对自动出图系统进行测试。测试地震数据为:2015年6月11日9时00分00秒陕西省西安市周至县6.5级地震(108.02°E,34.13°N)。图5为9点00分00秒模拟台网记录在数据库中写入地震信息。

图 5 在数据库中模拟一个地震信息 Fig. 5Simulating a seismic information in the database

运行专题图自动出图软件,监视系统运行结果如图6,09:00:20系统触发成功,自动开始制作专题图,09:05:20专题图制作完成(图7),产出A1、A3、A4共3个幅面40张专题图。

图 6 系统运行信息 Fig. 6System running information
图 7 产出的地震专题图 Fig. 7The outputting seismic thematic map
5 结语

本文通过对天地图-陕西地图服务、数据库监听和Python自动出图相关技术的研究,构建基于天地图的地理要素数据库,并在此基础上编程实现了基于天地图的地震专题图快速出图。系统避免了人工干预,在应急人员到岗之前就可以完成专题图的制作,提高了专题图产出效率。同时使用天地图数据避免了使用保密数据带来的专题图在共享和分发方面的限制,扩充了专题图的使用范围,方便了专题图的共享。

参考文献
1.陈鑫祥,吴锦超,2013.利用ArcGIS Engine实现天地图瓦片数据的切割.北京测绘,(4):17—20.
2.和朝霞,贾宁,2013.基于ArcGIS的地震专题图快速生成技术研究.四川地震,(1):45—47.
3.李金香,温少妍,张琳琳等,2013.新疆地震应急救援快速图研究.高原地震,25(2):56—59.
4.牛莹,刘亮,2014.基于C/S的网络地图的研究与实现——以天地图为例.甘肃科技,30(18):38—41.
5.魏艳旭,王宝坤,贾军鹏等,2014.基于AE的地震应急专题图快速生成系统设计与实现.价值工程,(8):229—230.
6.周津津,陈少锋,刘晓娟,2014.浅谈基于ArcGIS的影像处理工具集开发.37(11):155—157.