周嵩山,李红波,夏淑芳,杨晓明
(1.江西省基础地理信息中心,江西 南昌 330046;2.昆明理工大学 建筑工程学院,云南 昆明 650093;3.云南师范大学 旅游与地理科学学院,云南 昆明 650092)
随着航天航空技术、计算机技术、网络技术及通信技术的快速发展,测绘成果不断取得突破性进展[1]。因此,工作效率在测绘行业中显得极为重要。对于如何快速、高效地进行数字化成图各位学者提出了不同的方法[2-3],目前,内业成图软件主要有清华山维公司与清华大学土木系联合开发的测霸EPSW、武汉瑞得测绘自动化公司的RDMS系列及广州南方测绘仪器公司的CASS系列。其中南方公司的CASS系列使用最为广泛。因此,本文结合CASS成图系统提出一种简单、实用、高效的测图方法——简码法。该方法减少了大量的内业工作量及测量成本,大大提高工作效率。
所谓简码法[4]就是指在野外将采集的地物点坐标数据附加属性简码,内业处理软件根据简码与成图软件内部编码对照文件,将外业采集的数据转换为成图软件能够识别的图形数据文件,从而实现“外业直接成图”,减轻了测绘工作者劳动强度,提高工作效率及成图质量。
在实际测图中,测绘工作者可以采用CASS系统提供的编码法进行测图,内业实现自动成图,但在外业测量中,每测一个地物点都须输入6位数字编码或2~3位的地物编码[5],这些工作将导致外业数据采集速度极慢,并且每测一地物要输入与其对应的编码,如不小心输错编码将导致内业成图出错,因此该方法在实际测量中不太现实。本文提出的简码法很好地解决了这个问题,简码法要求将野外所需测的地物点使用简单且易于记忆的简码对其附值,具体做法是采用地物点的每个字拼音的第一个字母,如“路灯”对应的简码为“LD”、“旗杆”对应的简码为“QG”,“陡坎”对应的简码为“DK”等,为了使野外测量简码输入更为简便,本文中的简码一般设置成2~3位尽量不超过3位,如“内部道路”对应的简码为“NBL”、“加固斜坡”对应的简码为“GXP”等。对于极不常见的地物本文提倡使用万能简码“*”表示[6],并记下该点为何地物,然后内业进行相应绘图处理。
简码法测图工作流程如图1所示。
图1 简码法测图工作流程
在进行野外测量时,测量员最好随身携带一份简码表,以防在测量过程中对某些地物的简码忘记或者记错,而导致内业自动成图出错,这种错误一般是很难发现的。具体的野外数据采集方法为对于点状地物,在测量时只要输入其相应简码即行,对于线、面状地物,在测第一点时输入其相应简码,如下一点还是该线、面状地物,则输入连接码“+”即可,如果第三点不是该线、面状地物而第四点又是该线、面状地物,则应输入“2+”,具体野外操作码原则[7-9]如表1所示。
表1 描述连接关系的符号及含义
在进行野外数据采集后,就应该对其进行转换。要在CASS成图系统中实现自动成图,必须将所采集的数据的简码转换成CASS系统默认的编码,对应关系如表2所示。本文基于C#语言编程实现,程序主要包括数据输入、数据转换及数据输出3部分,其中进行数据转换的具体思路是先对需测量地物点所设置的简码与CASS系统里的编码进行匹配,建立一个简码与编码一一对应的数据库,然后利用程序调用野外所测得的*.dat文件,通过建立的数据库将简码转换成其对应的CASS系统默认的编码,最后将转换后的*.dat文件输出,如“路灯”的外业测量简码是“LD”,转换后其编码是“A70”,“旗杆”的外业测量简码是“QG”,转换后其编码是“L66”等等。其软件的操作界面如图2所示,转换前后的数据对比如图3所示。数据转换的主要参考代码如下:
图2 野外数据转换软件
图3 数据转换前后对比
表2 本文设置的简码与CASS系统编码对照表
string[]cells=new string[codecell.Length];//定义一个数组,存储之后分解的数据
int aerryvalue=codecell[1].Split(‘,’).Length;
OleDbConnection con=new OleDbConnection(myConn);
MessageBox.Show(“代码对照数据库打开失败!”);
}
for(int i=0;i<codecell.Length;i++)
{
cells[i]=codecell[i].ToString().Split(‘,’)[1];
}
for(int j=0;j<cells.Length;j++)
{
if(cells[j]==“+”)
{
cells[j]=“+”;
}
else
{
commandsql=“SELECT*FROM code2code WHERE EasyCode LIKE”“+cells[j]+”“;”;
OleDbCommand comm=new OleDbCommand(commandsql,con);
OleDbDataReader reader=comm.ExecuteReader();
while(reader.Read())
{
cells[j]=reader[2].ToString();
}
reader.Close();
}
}
con.Close();
string[,]begincode=new string[codecell.Length,aerryvalue];//定义一个二维数组存储转码后的数据
for(int i=0;i<codecell.Length;i++)
{
for(int h=0;h<aerryvalue;h++)
{
string[]test1=codecell[i].ToString().Split(‘,’);
begincode[i,h]=test1[h].To-String();
if(h==1)
{
begincode[i,h]=cells[i];
}
}
}
本文对昆明理工大学校园进行了1∶500大比例尺简码法数字化测图,具体仪器设备有:南方全站仪1台、棱镜1个、笔记本1台(用于内业成图)、简码表一份以及一些相关设备,人员只需要观测员1名、立尺员1名两名即可。根据简码法野外数据采集的原理及步骤,将所采集的数据文件设为KG.dat,通过作者开发的野外数据转换软件(其界面如图2所示)转换后的数据文件设为KGZ.dat(其转换前与转换后的数据对比如图3所示),在计算机中运行南方CASS7.0成图软件,将转换后的数据导入到软件中开始进行内业成图,具体操作只需要两步即可,即先进行[绘图处理]命令下的[编码引导]再进行[简码识别]两步即可完成内业自动成图。图4是运用简码法数字化测图实现内业自动成图的部分校园地形图。
图4 部分校园地形图
简码法数字化测图是一种全自动成图方法,减少了大量的内业工作量并避免了一些人为出错因素,大大提高了成图质量。同时在外业测量中,由于所设置的简码简单且易于记忆,因此提高了外业数据采集速度。另外,利用简码法测图可以由原来的3个人一组减至为2个人一组,因此测量成本大大降低。但其缺点为在观测员看不到立尺员的情况下,立尺员必须时刻与观测员保持联系,告诉观测员所测地物以便观测员及时更换简码,另外在野外如有简码增补,内业处理数据之前要打开简码对照文件作相应的增补[10]。再者在外业测图中如果某一地物简码输入错误,内业自动成图时也将出错,并且这种错误不容易发现。
简码法测图是一种简单、实用、高效的测图方法,很大程度上提高了测绘工作效率,并且该方法弥补了其他测图方法的不足。在多次大比例尺野外测图实践中,该方法都取得较好的效果。若采用RTK快速动态测量采集碎部测量点,简码同样可以使用,在电子手簿上输入非常方便[11]。因此,该方法值得在测绘行业中推广。
[1]国家测绘局.测绘科技发展“十二五”规划(征求意见稿),2010.
[2]倪少华.大比例尺数字化测图的新方法——草图编码法[J].城市勘测,2006(2):58-61.
[3]王学春,尚继宏.一种新型数据编码方案——简拼编码法[J].测绘科学,2009,34(4):218-221.
[4]安立新.简码测图在测量中的应用[J].矿山测量,2004(3):47-48.
[5]史长鳌,刘秀格.大比例尺数字化测绘新方法——简码法[J].测绘通报,2003(8):64-65.
[6]聂宗斋,郭立新.简码在全野外数字化地形测量中的应用[J].河南水利与南水北调,2009(8):138-140.
[7]潘正风,杨正尧,程效军,等.数字测图原理与方法[M].武汉:武汉大学出版社,2005.
[8]南方测绘仪器公司.CASS7.0使用说明书[M].广州:南方测绘仪器公司,2006.
[9]Joseph Smith Rusty Gesner,著.AutoCAD 12.0定制大全[M].北京:学苑出版社,1994.
[10]姚茂金,和春燕.简码法数字化测图[J].中州煤炭,2005(3):46-47.
[11]张国平,谭校山.一种实用的地面数字化成图方法——简别码法[J].测绘通报,2008(4):29-41.