APP下载

基于EXCEL的地形图图幅号转换查询方法

2015-12-03梁林峰

自然保护地 2015年3期
关键词:图幅单元格公式

梁林峰

(山西省林业调查规划院 山西太原 030012)

我国基本比例尺地形图的分幅与编号有两种,按1993年以前标准产生的,称为旧分幅与编号,按1992年和2012年《国家基本比例尺地形图分幅和编号》[1-2]标准产生的,称为新分幅与编号。由于目前我国使用的测绘资料仍有大量的旧分幅与编号地形图,所以需要进行新旧图幅号之间的转换,同时也经常需要进行新图幅号与点位坐标的相互查询。笔者通过对有关文献资料[3-8]系统研究,利用EXCEL函数建立了国家基本比例尺地形图新旧图幅号转换及查询计算模板。该模板界面直观,操作简单,具有较强的实用性,便于推广使用。

1 地形图分幅与编号

新旧1∶100万地形图的分幅和编号均采用国际标准。分别按纬差4°、经差6°进行分幅,其中每一格为一幅1∶ 100万地形图。新旧编号基本相同。

旧地形图按经、纬度分幅的编号只规范到1∶0.5万。1∶50万~1∶0.5万比例尺地形图都是按照规定的经差、纬差进行划分。但分幅的基础不同,其编号采用不定长代码编排。

新地形图按经、纬度分幅的编号规范到1∶500。1∶50万~1∶500比例尺地形图都是按照规定的经差、纬差进行划分,同比例尺新图幅划分的经差、纬差与旧图幅相同。新地形图分幅都是以1∶100万比例尺地形图为基础加密进行,地形图编号采用连续代码编排,共由10位或12位代码组成。

2 计算原理及程序功能

地形图新旧图幅转换计算公式均采用直接计算的方法,新图幅号与经纬度值的相互查询计算采用《国家基本比例尺地形图分幅和编号》中的计算方法,但对部分计算公式进行了改进。

使用者可以参照图示建立模板,按提供的公式输入相应单元格即可。利用该EXCEL计算模板,可以实现以下5种计算功能:已知地形图新图幅号转换为相同比例尺的旧图幅号;已知地形图旧图幅号转换为相同比例尺的新图幅号;已知某点或图幅的西南角图廓经纬度坐标,计算其所在各比例尺地形图的新图幅号;已知新图幅号,求算其图幅西南角、东北角图廓经纬度坐标;已知新图幅号计算其不同比例尺图幅隶属关系。

3 利用EXCEL 进行转换查询的方法

3.1 由新图幅号计算旧图幅号

打开“在1∶100万图幅内由新图幅号转换旧图幅号”计算模板,见图1。

图1 由新图幅号转换旧图幅号模板

先将已知的新图幅号填入第B列对应比例尺的单元格内,然后在原始数据输入区将新图幅在1∶100万图幅内对应比例尺的行号、列号写入相应的单元格中,即可自动计算旧图幅的对应比例尺代码。各单元格内输入的公式如下(等号“=”前为单元格代码,从等号开始为实际输入公式,以下同):

E6=2*(C6-1)+D6;

F7=4*(C7-1)+D7;

G8=12*(C8-1)+D8;

G9=12*INT((C9-1)/2)+INT((D9-1)/2)+1;

H9=2*MOD((C9-1),2)+MOD((D9-1),2)+1;

G10=12*INT((C10-1)/4)+INT((D10-1)/4)+1;

H10=2*MOD(((INT((C10-1)/2)+1)-1),2)+MOD(((INT((D10-1)/2)+1)-1),2)+1;

I10=2*C10+D10-4*(INT((C10-1)/2)+1)-2*(INT((D10-1)/2)+1)+4;

G11=12*INT((C11-1)/8)+INT((D11-1)/8)+1;

J11=8*MOD((C11-1),8)+MOD((D11-1),8)+1;

G12=12*INT((C12-1)/16)+INT((D12-1)/16)+1;

J12=8*MOD(((INT((C12-1)/2)+1)-1),8)+MOD(((INT((D12-1)/2)+1)-1),8)+1;

K12=2*C12+D12-4*(INT((C12-1)/2)+1)-

2*(INT((D12-1)/2)+1)+4。

3.2 由旧图幅号计算新图幅号

打开“在1∶100万图幅内由旧图幅号转换新图幅号”计算模板,见图2。

先将已知的旧图幅号填入第B列对应比例尺的单元格内,然后在原始数据输入区将旧图幅在1∶100万图幅内对应比例尺的代码写入相应的单元格中,即可自动计算对应比例尺的新图幅行号、列号。公式输入及计算区各单元格内输入的公式如下:

J6=INT((C6-1)/2)+1;

K6=MOD((C6-1),2)+1;

J7=INT((D7-1)/4)+1;

K7=MOD((D7-1),4)+1;

J8=INT((E8-1)/12)+1;

K8 =MOD((E8-1),12)+1;

J9=2*INT((E9-1)/12)+INT((F9-1)/2)+1;

K9=2*MOD((E9-1),12)+MOD((F9-1),2)+1;

J10=4*INT((E10-1)/12)+2*INT((F10-1)/2)+INT((G10-1)/2)+1;

K10=4*MOD((E10-1),12)+2*MOD((F10-1),2)+MOD((G10-1),2)+1;

J11=8*INT((E11-1)/12)+INT((H11-1)/8)+1;

K11=8*MOD((E11-1),12)+MOD((H11-1),8)+1;

J12=16*INT((E12-1)/12)+2*INT((H12-1)/8)+INT((I12-1)/2)+1;

K12=16*MOD((E12-1),12)+2*MOD((H12-1),8)+MOD((I12-1),2)+1。

图2 由旧图幅号转换新图幅号模板

3.3 已知图幅内某点或图幅西南图廓点的经、纬度,计算其新编号

打开“已知图幅内任意点或西南角经纬度计算新图幅号”计算模板,见图3。

图3 已知图幅内任意点或西南角经纬度 计算新图幅号模板

先在原始数据输入区将已知经、纬度值按显示格式写入相应比例尺的单元格中,并且同时要在1∶100万比例尺对应行输入相同经、纬度值,以便计算1∶100万图幅行、列号。输入时只更改度(°)、分(′ )、秒 (″ )的数值,不要去掉(°)、(′)、(″)的标志。即可自动计算对应比例尺的新图幅行号、列号。公式输入及计算区各单元格内输入的公式如下:

E5=LEFT(C5,3)+MID(C5,FIND(" ° ",C5) +1,2)/60+MID(C5,FIND("′",C5)+1,2)/3600;

F5=LEFT(D5,2)+MID(D5,FIND("°",D5)+1,2)/60+MID(D5,FIND("′",D5)+1,2)/3600;

G5=CHAR(INT(F5/4)+65);

H5=INT(E5/6)+31;

G6=B6-INT(MOD(F6,4)/(4/B6));

H6=INT(MOD(E6,6)/(6/B6))+1。

第E、F、G、H列其它单元格采用本列上一单元格下拉复制的方式输入。

3.4 已知新图幅号计算该图幅范围(图幅西南、东北图廓点的经、纬度)

打开“已知新图幅号计算图幅西南、东北角经纬度”计算模板,见图4。

图4 已知新图幅号计算图幅西南、东北角 经纬度模板

先将已知的新图幅号填入第C列对应比例尺的单元格内,然后在原始数据输入区将对应比例尺行、列号写入相应比例尺的单元格中,同时要在1:100万比例尺对应行输入1:100万图幅行、列号。公式输入及计算区各单元格内输入的公式如下:

F5=($E$5-31)*6;

G5=(CODE($D$5)-65)*4;

H5=TEXT(F5/24,"[h]°mm′ss.000″");

J5=TEXT((F5+6/B5)/24,"[h]°mm′ss.000″");

K5=TEXT((G5+4/B5)/24,"[h]°mm′ss.000″");

F6=($E$5-31)*6+(E6-1)*(6/B6);

G6=(CODE($D$5)-64)*4-D6*(4/B6)。

第H列和第I列的其它单元格复制H5单元格公式输入,F、G、J、K列其它单元格采用本列上一单元格下拉复制的方式输入。

3.5 在同一幅1:100万图幅内不同比例尺新地形图的行列关系换算

打开“在同一幅1∶100万图幅内不同比例尺新地形图的行列关系换算”计算模板,见图5。

图5 不同比例尺新地形图行列关系换算模板

先在原始数据输入区将当前新图幅号、比例尺、1∶100万图幅划分为当前比例尺图幅的行(列)数、当前图幅的行、列号写入相应的单元格中,并且提前在公式输入及计算区填入1∶100万图幅划分为各比例尺图幅的行(列)数。公式输入及计算区各单元格内输入的公式如下:

D6=C6/$C$3;

E6=INT(($G$3-1)*D6)+1;

F6=INT(($H$3-1)*D6)+1;

G6=IF(D6<1,E6,$G$3*D6);

H6=IF(D6<1,F6,$H$3*D6)。

第D、E、F、G、H列其它单元格采用本列上一单元格下拉复制的方式输入。

4 几点说明

(1)在计算模板中所列的旧图幅号编码只是常见编码格式,各地区不完全一致。旧图幅编码中出现的各比例尺代码如为A、B、C、D,甲、乙、丙、丁,或a、b、c、d 时,应用模板时对应输入或输出数值分别为1、2、3、4。

(2)新图幅编号的行号输入时只输入实际序号,计算输出时也只输出实际序号,规范填写图号时要用0补齐3位或4位。

(3)我国图幅纬度范围在0°~56°内,1∶100万地形图图幅代码分别为A、B、C、D、……、N,也有的用数字编号,对应输入数值分别为1、2、3、4、……、14,应用模板时输入、输出值均为字符码,如需体现数值码则需要改写部分公式。

(4)我国图幅经度范围在72°~138°,1∶100万地形图图幅对应列号为43、44、45、……、53,应用模板时按实际列号输入、输出。

(5)由于我国幅员辽阔,各地经、纬度值中的度数位数不同,在应用“已知图幅内任意点或西南角经纬度计算新图幅号”计算模板时,需将E5、F5单元格中的“LEFT(C5,3)”函数中的“3”根据当地经、纬度度数的整数位数改写为“1”或“2”。

(6)新旧图幅号转换只需转换1∶100万图号后的代码即可,且只对1∶50万~1∶0.5万7种比例尺地形图进行转换。查询可以增加1∶2 000、1∶1 000、1∶500三种大比例尺地形图。

(7)所有输入公式只从等号“=”开始输入,等号前为单元格位置。

[1] 国家技术监督局.中华人民共和国国家标准 国家基本比例尺地形图分幅和编号(GB/T 13989-92)[S].1992.

[2] 国家质量监督检验检疫总局,国家标准化管理委员会.中华人民共和国国家标准 国家基本比例尺地形图分幅和编号(GB/T 13989-2012)[S].2012.

[3] 刘宏林.地形图新旧图幅编号变换公式的探讨[J].解放军测绘学院学报,1998,15(2)∶125-128,130.

[4] 刘宏林.国家基本比例尺地形图新旧图幅编号变换公式及其应用[J].测绘通报,1998,(8)∶36-37.

[5] 林辉,唐可平,王苗根,等.地形图分幅及图幅号转换[J].华东森林经理,2011,25(1)∶59-62.

[6] 余旭.地形图新旧图幅自动转换的实现[J].焦作工学院学报,2004,23(3)∶190-192.

[7] 韩丽蓉.我国基本比例尺地形图分幅与编号的计算方法[J].青海大学学报,2006,24(6)∶79-82.

[8] 孙万民.新旧地形图编号及范围解算方法[J].海洋测绘,2009,29(5)∶30-32,36.

猜你喜欢

图幅单元格公式
组合数与组合数公式
排列数与排列数公式
基于ArcEngine自动生成1∶5万地形图标准分幅图框
合并单元格 公式巧录入
流水账分类统计巧实现
等差数列前2n-1及2n项和公式与应用
玩转方格
玩转方格
地形图空间信息提取方法研究
例说:二倍角公式的巧用