423基于WINCEGPS手簿的数字化测图系统研究与实现.docVIP

423基于WINCEGPS手簿的数字化测图系统研究与实现.doc

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
423基于WINCEGPS手簿的数字化测图系统研究与实现

基于WINCE GPS手簿的数字化测图系统研究与实现 孙艳崇 (辽宁省交通高等专科学校 辽宁 沈阳 110122) 摘要:本人主持了辽宁省教育厅的科研项目《基于WINCE GPS手簿的数字化测图系统研究与实现》,其项目编号是L2010220。该测图系统实现了在WINCE GPS手簿上直接绘制地形图的功能,并且可以通过编码链接导入到“CASS”(数字地形地籍绘图软件)中,自动生成“dwg”格式的数字地图文件;用户只要在“CASS”绘图软件中进行简单的编辑工作,即可生成标准的数字地形图。采用这一系统进行外业数字测图时,可以利用碎步点坐标采集之间的空余时间,进行现场绘图,这样不仅可以减轻内业成图的工作量;并且利于发现漏测的地物,进行实时的补测与修改。 关键词:WINCE ;GPS手簿;数字化测图系统;研究与实现 1.概述 目前很多品牌的GPS接收机手簿都具有操作系统(例如WINCE),广义上讲此手簿即相当于一个掌上电脑,利用嵌入式开发工具EVC4.4对其进行二次开发,实现在WINCE GPS手簿上绘制数字地图的功能,本测图系统实现了掌上测图系统的基本功能,具有展点、图形绘制、图形编辑及无极缩放等功能。 本系统采用视图文档结构,文档对象通常代表一个已经打开的文件,在文档类中,通过串行化函数可以实现图形的打开和保存,而视图对象表示文档中数据的可视化表示,并提供可视化交互界面允许用户查看、编辑数据,在视图类中定义链表类图元对象及文字对象,以实现对图元对象和文字对象的保存。在用EVC开发测图系统中,各图元的绘制都是以类的形式实现的,所以相关的图元类要直接或间接的从Cobject类派生,这样就可以利用类的多态性,简化程序的结构,利于对程序的调试和修改。多态性是面向对象程序设计代码重用的一机制,CfileDialog,实现用户通过文件对话框的选定展点所用的文件,定义文件类Cfile,实现对文件的读取,并将数据文件分割成行,并用字符数组存储; ①通过下列循环语句,计算出文本文件的行数,“\n”代表的是换行符 2.1展点及绘制点号功能的实现 绘制数字地形图之前,必须将GPS RTK测定的碎步点展绘制在软件中,然后才能依据实际地物的连接关系,进行点的连线,进而绘制出地形图;并且需要将点号也同时显示在软件的绘图区域,因为这样如果发现图形的位置及相对位置关系出现问题,可以通过查找源数据以确定具体是哪个点出现错误。 GPS测得的数据存放在记事本中,此数据文件是以文本文件格式存在的,在展点前需要将此文件进行分割处理,得到点号、东坐标、北坐标及高程,之后还需要把这些数据转换处理成Double的数据格式。其主要过程如下: 定义文件对话框类CfileDialog,实现用户通过文件对话框的选定展点所用的文件,定义文件类Cfile,实现对文件的读取,并将数据文件分割成行,并用字符数组存储; ①通过下列循环语句,计算出文本文件的行数,“\n”代表的是换行符 int num=1; for(int i=0;ix;i++) {if (text.GetAt(i)==\n) num=num+1;} ② 将数据文件分割成行,用字符数组存储 for(int j=0;jnum;j++) {CString str[num]=text.SpanExcluding(_T(\n)); text= text.Right(text.GetLength()-text.GetLength());} 其中各函数的使用方法如下: ① CString pos_code=Str_txt.SpanExcluding(_T(,)) 返回字符串“Str_txt”左侧起始位置到出现第一个“逗号”位置之间的字符,并将其保存在字符“pos_code”中; ②int Str_long=Str_txt.GetLength() 返回字符串“Str_txt”中字符的数目,并保存在整数类型“Str_long”中 ③ CString code= Str_txt.Right(3) 返回字符串“Str_txt”中最右侧的三个字符,并保存在字符串“code”中 ③ CString code= Str_txt.Right(3) 返回字符串“Str_txt”中最右侧的三个字符,并保存在字符串“code”中 ④if (text.GetAt(i) ==\n) 判断字符串中,是否含有换行符“\n”,如果有则返回“真”值,没有则返回“假”值 (2)利用Cfile 类中的SpanExcluding()、GetLength()和Right()等函数实现对文件中每行数据进行分割,即得到“点号”、“东坐标”、“北坐标”和“高程”; (3)利用atof()函数,将 “东坐标”、“北坐标”和“高程”字符串,转换成“Double”数据类型; (4)定

文档评论(0)

zhanghc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档