一种动态实时获取图幅号的方法
2021-07-17何宗友
夏 振,刘 晓,何宗友
(广东省国土资源测绘院,广州 515000)
0 前言
国家基本比例尺系列地图是新时期自然资源系统测绘地理信息重要基础数据,广泛应用于地震救灾、滑坡泥石流监测、应急保障等领域[1-3]。在信息化时代,快速准确获取野外任意点位坐标,并获得其在国家基本比例尺地图中的图幅号,仍具有较大现实意义。随着时代发展,求取图幅号的方式方法出现了不同的形式[4-7]。目前在外业测量中,往往仍需人工计算、查阅纸质图幅结合表或者回到内业在PC机上查询获取图幅号,效率低,时效性差、容易出错,给野外测量工作带来一定程度的不便。
随着移动通讯进入5G时代,高网速、大容量和低延时的移动通讯网络已成为国家信息高速公路基础设置。智能手机早已成为野外测量人员日常携带的必需设备。Android系统是由Google公司于2007年发布的智能手机平台,是一个开放、自由的终端平台[8-9]。为在野外测量现场实时获取各种基本比例尺下的图幅号信息提供了可能,本文依据Android智能手机操作系统的开放性,内置GPS信号接收模块和手机基站定位等硬件基础,研制了一款可方便快捷的动态实时获取多比例尺下图幅号的手机软件,可在一定程度上提高野外作业效率。
1 地形图分幅
为了便于测绘、拼接、管理和使用地形图,需要将广大地区的地形图划分为若干单幅地形图。地形图分幅与编号的方法有两大类,一类是按经纬线分幅,即按照经线和纬线来划分,左右以经线为界,上下以纬线为界,图形近似梯形;另外一种是按坐标格网分幅的矩形分幅法,即按照平面直角坐标的纵、横坐标线来划分矩形或者正方形[10]。前者用于8种国家基本比例尺地形图(1:100万-1:5000),后者用于工程建设大比例尺地形图。《国家基本比例尺地形图分幅与编号》(GB/T 13989-2012)是目前我国进行地形图分幅与编号的标准依据[11-12]。
2 地形图编号
我国1:100万地形图的分幅与编号采用国际1:100万地图分幅与编号标准。按照经差6°、纬差4°,从赤道起算,每纬度4°为一行,至南、北纬88°各分为22行,依次用大写拉丁字母A、B、C、……V表示其相应行号;从180°经线起算,自西向东每经差6°为一列,全球分为60列,依次用数字表示其相应列号。国际1:100万地图编号第一位表示南、北半球,由于我国全部位于北半球,N字省略。各种基本比例尺地形图图幅大小数量关系如表1所示。
表1 不同比例尺地形图经差、纬差和行列数量关系Table 1 The relationship between longitude difference,latitude difference and the number of rows and columns in different scale maps
在1:50万-1:5000地形图的编号中,第三位是比例尺编码,见表2所示。新图幅号编码中的后6位,分别为行号和列号编码。其规则为从上到下用三位阿拉伯数字来编号,列号编码规则为按照从左往右的顺序用3位阿拉伯数字来编号,前面不足3位的添0来补充。
表2 不同比例尺地形图对应的代码Table 2 Codes corresponding to different scale topographic maps
3 关键计算方法
核心思路是:根据点的坐标,先依据下列地图学公式,计算点所在的1:100万图幅的编号。
式(1)、(2)中,a为1:100万图幅行号所对应的数字码,b为1:100万图幅列号,[]表示取整数。
然后再利用下式计算该地在目标比例尺地形图下的图幅行列号
式(3)、(4)中,[]表示取整数,()表示取余数,c为行号,d为列号,φ为该点纬度值,λ为某地经度值,Δφ为某比例尺地图下的纬度差,Δλ为某比例尺地图下的经度差,各基本比例尺地形图经差纬差情况见表1,不同比例尺地形图对应的代码见表2。
4 程序设计实现
4.1 获取坐标信息
动态获取到野外作业地点的经纬度坐标是获取图幅号信息的的关键。如今的Android智能手机,基本都已集成了GPS芯片,可获取位置信息。
图1 获取GPS坐标流程Fig.1 Process of obtaining GPS coordinates
在AndroidManifest.xml文件中授权GPS访问权限,然后创建LocationManager对象,注册LocationListener以侦听位置变化,监听设备开关与状态。本文以1 s为间隔,持续侦听位置信息,最后在OnLocationChanged事件处理函数中直接获取到经度、纬度、GPS大地高等信息。
在Android7.0系统的智能手机中运行,获取坐标信息的效果如图2所示。
图2 获取坐标信息Fig.2 Get coordinate information
本软件也支持手工输入经纬度坐标值,只需将手机GPS功能关闭,文本框就能接受用户手机键盘输入坐标参数。
4.2 求取图幅号的实现方法
依据地图学原理,将经纬度信息代入核心算法,即可动态求取图幅号,其流程见图3。
图3 计算大于1:100万标准比例尺地形图图幅号流程Fig.3 Roadmap of calculating map number with scale greater than 1:1 million
由GPS获得的经纬度数值(λ,φ),按照3节公式1和公式2,求解出该点位在1:100万比例尺地形图中的图幅号(共3位),然后参照表2不同比例尺地形图对应的代码,求出该点位的比例尺代码(第4位),然后按照第3节公式3和公式4,求解出该点位目标比例尺中的行列号(共6位),最后组合起来,形成长度共10位的国家标准比例尺地形图图幅号。
以求取某地1:1万比例尺地形图图幅号为例,运行效果如图4。
图4 求解图幅号Fig.4 Solve map number
4.3 应用举例
以广州市花都区某地为例,手机位置定位为东经113°10′49",北纬23°22′44",经计算该地所在1:1万图幅号为F49G024083。
经与广东省1:1万标准图幅结合表比对,该地在1:1万比例尺下的图幅号值也为F49G024083,两者是一致的,叠加到奥维地图上效果如图6所示。
图6 某地在1:1万图幅结合表中位置Fig.6 The position of some place in 1:10000 map combination table
5 结语
本文介绍了地形图分幅与编号的基本原理,给出了以Android操作系统为平台的智能手机动态实时获取图幅号的方法。由于在国家新图幅编号系统中1:500至1:2000大比例地图图幅号采用整公里(或百米)平面坐标进行分幅或采用任意分幅,不直接由经纬度计算,本文暂未讨论由经纬度计算1:2000以上大比例尺地图图幅号的方法。目前用该方法实现的软件已广泛应用于单位野外像控测量、控制点普查等基础测绘项目实践,很好地解决了外业测量中难以方便快捷获取图幅号信息,计算费事费力、效率低、易出错的弊端。
图5 某地应用案例Fig.5 Application case of some place