欢迎来到天天文库
浏览记录
ID:6057989
大小:28.00 KB
页数:6页
时间:2018-01-01
《mapinfo数据坐标转换方法探究》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Mapinfo数据坐标转换方法探究 摘要:本文根据三种方式深入探讨了带属性的MapInfo数据的坐标转换方法:一种通过VC和MapX编程调入“.tab”文件,快速实现了坐标系之间的一系列转换;一种通过AutoCADMap3D软件实现四参数转换;一种在.prj文件中定义坐标系,通过改变投影来进行转换。这三种方式最终都以WGS-84坐标转换为BJ54坐标为例子进行了验证,取得良好结果。关键词:MapInfo数据;坐标转换;七参数;四参数;MapX;AutoCADMap3D中图分类号:C37文献标识码:A前言在MapI
2、nfo的.prj文件中已经定义了300多种坐标系,但是其中并没有我国现有的常用坐标系,更没有我国地方独立坐标系的定义[1,2]。随着MapInfo软件在我国的深入利用,在该软件中会经常涉及到我国常用坐标系(北京54和西安80)和地方独立坐标系,这就需要我们对其进行定义和坐标转换。本文通过三种方法对MapInfo数据的坐标转换做了一些研究。1Mapinfo数据坐标转换方法设计1.1基于VC和MapX平台坐标转换的设计61)首先把.gst地图加载进来;2)根据函数进行图元统计和分类,本文只针对线图元和点图元;3)新建图
3、层,用于添加转换后的图元,设置该图层的坐标系为转换后的坐标系,并且把原来的属性字段复制进来;4)获取线图元节点个数,然后获得节点坐标;5)获得节点坐标后进行坐标转换,转换时,应注意获得一个节点转换一个,把转换后的节点坐标以追加的方式添加在一个“点坐标.txt”文件中,把图元的属性值也添加在里面。6)在坐标转换完成后,从“点坐标.txt”文件中读取各个图元的节点坐标,把读取的节点坐标赋予给点对象,再把点对象赋给点集对象:当一个图元上的节点坐标全部读取后,把点集对象转换为图元添加到新建的图层上,并且把相应的属性值赋给新
4、添加的图元。1.2基于AutoCADMap3D的坐标转换设计首先把.tab文件导入到AutoCADMap3D,然后根据已知的X、Y平移量、旋转角度、缩放比例,运用命令进行转换,步骤如下:1)平移:在命令行键入MOVE命令后命令行显示:“Selectobjects:”,选定全部图素,然后命令行显示:“Specifybasepointor[Displacement]6:”,此时键入原点坐标(即选定基点的坐标)后回车;最后命令行显示:“Specifysecondpointor:”,此时键入原点新坐标后回车[3];2)旋转
5、:在命令行键入rotate命令;然后命令行显示:“Selectobjects:”,选定全部图素;接着命令行显示:“Specifybasepoint:”,此时选择平移时的基点后回车;最后命令行显示:“Specifyrotationangleor[Copy/Reference]:”此时键入旋转角度后回车。3)缩放:在命令行键入scale命令,命令行显示:“Selectobjects:”,选定全部图素;然后命令行显示:“XXfound”,按下回车键;接着命令行显示:“Specifybasepoint:”,此时选择平移时的
6、基点后回车;最后命令行显示:“Specifyscalefactoror[Copy/Reference]:”,键入缩放比例后回车。最后,再把DWG文件导出为“.tab”文件,导出时注意选择属性,这样属性数据就不会丢失。1.3利用.prj进行转换以WGS84坐标转换为BJ54坐标为例进行说明,步骤如下:1)通过软件求出BJ54坐标系转换到WGS-84坐标系的七参数;2)在.prj文件中定义出BJ54坐标系,然后保存;63)在MapInfo中打开已知的.tab文件;4)点“文件”选择下拉菜单中的“另存副本为”,弹出“另存
7、表为”的对话框;5)在“另存表为”的对话框中更改表的名称,点“投影”弹出“选择投影”对话框,在该对话框中选择自己定义的坐标系,最后点“另存表为”对话框中的保存即可。2实例分析为了对上述坐标转换程序和方法进行检验,本文采用实际的10个控制点坐标数据导入到Mapinfo中生成5条线段来参与转换。2.1基于VC和MapX方法的实例分析本实例采用10个控制点数据,根据已知的软件先求出七参数:208.555452540641、187.953989974842、75.695433324101、-1.626742、6.22838
8、8、-3.559023、0.402897421344201,这七个参数分别为X、Y、Z的平移参数和旋转参数、尺度参数,把这七个参数输入到如图1的界面中,进行转换,转换的结果以与已知的数据相比较结果如表1所示。表1转换数据与已知数据比较6通过以上的比较可知,利用本程序进行转换求得转换后坐标数据与已知的坐标数据之间的差值都处于厘米级,并且各个线段的属性没有改变,
此文档下载收益归作者所有