APP下载

VB与Google Earth在苏州市河流普查拓展中的应用

2014-09-24任晓东陆建伟唐晓春

城市建设理论研究 2014年25期
关键词:经纬度普查编码

任晓东 陆建伟 唐晓春

中图分类号:TV文献标识码: A

1 引言

按照全国水利普查的要求,结合苏州水利现代化、信息化实际和发展的需求,进一步摸清苏州水利家底,全面查清苏州河流湖泊和水利工程的基本情况,提高水利普查成果应用水平,在国普方案及省级拓展方案的基础上,苏州市开展了拓展河流基本情况普查工作,得到了大量河流的基本数据,如何对普查数据的经纬度、走向等基础信息进行校核,是一项繁杂及重复的劳动。解决的方法是采用VB编程技术批量生成普查河流的KML文件,然后在Google Earth中打开,通过图上显示的地点标记,直观地检查普查数据的合理性。

Google Earth是一款Google公司开发的虚拟地球仪软件,来源于Keyhole公司自家原有的旗舰软件,于2005年正式向全球推出,它把卫星照片、航空照相和GIS布置在一个地球的三维模型上。借助Google Earth的普及,其原生数据格式KML也成为业界的一种标准格式。KML是原先的Keyhole客户端进行读写的文件格式,是一种XML描述语言,并且是文本格式。KMZ是Google Earth默认的输出文件格式,是一个经过ZIP格式压缩过的KML文件。一般情况下,双击KML/KMZ文件即可从Google Earth中打开地标文件。

2 KML基本格式

基本格式的KML文件是指可以直接由Google Earth创建的KML文件,它包括地点标记、叠层、路线和多边形。

地点标记(Placemark)是Google Earth中最常用的地理特征,它使用一个黄色的图钉在地球表面标记一个位置。一个简单的地点标记的KML代码如下所示:

xml version="1.0" encoding="UTF-8"?

汾湖镇

-122.0822035425683,37.42228990140251,0

它包括以下几个部分:

(1)XML头:xml version="1.0" encoding="UTF-8"?

(2)KML命名空间定义:

(3)地点标记对象,包括:

名称(name):用于对地点标记进行注记;

描述(description):对地点标记进行描述,“气球(ballon)”中的显示内容;

点(Point):指定地点标记的位置。

3 KML文件的生成

普查得到的数据文件为Excel电子表格格式,各镇分别存放在一个目录中,表的格式如图1所示。

图1

将河流名称、经纬度等基本信息逐个输入到Google Earth是一个费时费力的工作,同时也容易产生二次输入错误。通过分析KML文件格式可知,一个镇多条河流的头部信息是保持不变的,变的只是河流名称和经纬度。因此采用VB程序遍历各个镇下的Excel文件,由程序生成以河流名称加断面编号为地点标记,并包含各地点标记经纬度的KML文件,这样就便于检查普查数据有没有问题。遍历生成KML文件部分代码如图2,经纬度转换部分代码如图3。

图2

图3

默认情况下,VB生成的KML文件为GB2312编码,中文字符在Google Earth中不会被识别,将会显示乱码。因此,需要将VB保存时的默认的GB2312编码转成UTF-8编码。转换编码时采用ADODB.Stream,代码如图4。

图4

双击生成的KML文件,左边的位置栏为图5显示效果,具体的河流名称、走向就展现在图6所示图中。

图5

图6

4 结束语

本文采用VB编程的方法,将苏州市拓展河流普查基本数据Excel电子表格文件,批量生成符合Google Earth要求的KML文件,并在Google Earth显示出地点标记。实践证明,采用VB编程的方法,既提高的工作效率,又减少了人工录入数据产生的二次错误问题,同时通过检查Google Earth各河流的地点标记,也能直观发现普查数据有无问题,保证了普查数据的准确可靠。

猜你喜欢

经纬度普查编码
住院病案首页ICD编码质量在DRG付费中的应用
基于经纬度范围的多点任务打包算法
2018年中国将开展第四次全国经济普查
第四次全国经济普查系列漫画
高效视频编码帧内快速深度决策算法
自制中学实验操作型经纬测量仪
澳洲位移大,需调经纬度
学习调查要“四会”
与普查一起成长
不断修缮 建立完善的企业编码管理体系