基于对象的坐标系统转换方法研究.doc_第1页
基于对象的坐标系统转换方法研究.doc_第2页
基于对象的坐标系统转换方法研究.doc_第3页
基于对象的坐标系统转换方法研究.doc_第4页
基于对象的坐标系统转换方法研究.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于对象的坐标系统转换方法研究龚 英1 沈 祥2 黄劲松3(1.核工业湖州工程勘察院,浙江省湖州市环渚路666号 313000;2.浙江省余姚市住房和城乡建设局,浙江省余姚市南滨江路218 315400;3.核工业湖州工程勘察院,浙江省湖州市环渚路666号 313000)摘 要 本文通过对基于不同椭球的各种坐标系统进行分类,建立椭球系统计算机对象模型及坐标系统转计算机模型,并对各种坐标系统的转换进行归类分析。通过坐标系统转换实验,对比各种转换方法的转换效果。把对象模型封装到.net类库,方便实际应用及二次开发。关键词 坐标转换;高斯投影;对象模型;七参数A Study of the Object-based Coordinate System TransformationGong Ying1,Shen Xiang2,Huang Jinsong3(1. Huzhou Engineering Survey Institute of Nuclear Industry, 666 Huanzhu Road, Huzhou City 313000;2.Zhejiang Yuyao Municipal Burea of Housing and Uran-Rural Development, 218 Nanbin Road, Yuyao City 315400;3.Huzhou Engineering Survey Institute of Nuclear Industr, 666 Huanzhu Road, Huzhou City 313000)Abstract:this text is to classify and analyze various coordinate system based on the different ellipsoid ,establish ellipsoid system computer object model and coordinate system to the computer model , classify and analyze the various coordinate system transformation .Contrast the effect of various transfer methods by experiment of coordinate system transformation. Encapsulate the object model into net for convenient and practical application and further development.Keyword:Coordinate Transformation; Gauss projection;Object Model;Seven Parameters1 前言随着经济和科学技术的发展历程,我国国家统一坐标系统经历了北京54、西安80及2008年7月最新启用的CGCS2000坐标系统阶段,且WGS84坐标系统一直应用于我们的生产过程之中。多种坐标系统及坐标系统坐标的多种格式坐标间的转换,在实际工作中还是有些容易混淆和难以操作,本文根据这种实际情况,通过对常用各种椭球参数比较,用c#语言建立各椭球对象的计算机模型,封装常用的椭球计算方法,建立了空间直角坐标系统转换对象模型,封装了转换参数求解、坐标转换方法,并建立.net动态链接库文件,以方便实际应用及二次开发。CGCS2000坐标系统在全国已经全面推广应用,由于CGCS2000和WGS84的椭球参数的微小的差异,在一般的测量生产中,WGS84系统坐标直接作为CGCS2000系统坐标使用,但是两坐标系统间还是有差异的,如在高等级测量和精密测量任务中是不能完全替代,需要进行转换计算,本文也通过参考其他学术资料,实现了基于对象的应用。2 坐标系统2.1 常用坐标系统归纳分类北京54、西安80 、WGS84、CGCS2000各坐标系统,按照坐标的表示方式不同本文进行了归纳分类,如图1:图1 坐标系统分类图2.2 坐标转换根据坐标系统分类,坐标转换可以分为以下三大类:2.2.1 大地坐标与直角坐标系统间转换是基于某一个椭球上的投影正反转换和空间坐标转换,是两种不同定义的坐标系统间的转换,包括椭球空间直角坐标系统。如:高斯投影正反算、空间直角坐标与大地坐标的相互转换;各种投影方式的定义和正反算公式参考文献1第7章椭球面上的测量计算;2.2.2 直角坐标系统间相互转换包括不同椭球投影坐标系统间和空间直角坐标系统间的相互转换,其他直角坐标系统间的相互转换等。均为以X,Y,H表示的右手正交坐标系,坐标系原点、各轴方向及尺度比例是坐标系统转换的关键要素,也称为七参数。空间三维直角系统间转换常用方法七参数法,平面二维系统间转换常用四参数或三参数法。转换参数的求解通常采用布尔萨沃尔夫转换模型,使用多组重合点坐标按照最小二乘法平差计算转换七参数。2.2.3 不同椭球的大地坐标系统间转换如北京54坐标与西安80 坐标系间转换,北京54或西安80 与CGCS2000系统间转换。大地坐标间转换根据当前几个坐标系统性质,实际有可以分为两种情况:一是CGCS2000与WGS84间的理论转换。因为两坐标系统均为地心坐标系,且长半轴相等,仅基础椭球的扁率有微小的差异,计算公式(式1、2、3引用自文献3):dL=0; (1)dB=M(2-(2*f-f2)Sin2B)*SinB*CosB*df/(1-f); (2)dH=M*(1-(2f-f2)Sin2B)Sin2B*df/(1-f); (3)说明:f:椭球扁率;df:两椭球扁率差,M:子午圈曲率半径;dB和dH单位均为米)二是参心坐标系(北京54、西安80)之间相互转换,或者与CGCS2000或WGS84间的相互转换。直接转换的方法有二维七参数法或三维七参数法,转换模型可参照文献2大地坐标转换。间接转换的方法是把大地坐标转换到直角坐标系统内,进行直角坐标系统间转换,然后再转回大地坐标系统。 3 坐标转换对象模型3.1 椭球对象模型根据资料可知,北京54坐标、西安80坐标、WGS84 和CGCS2000 采用的参考椭球参数各不相同,前二者是参心坐标系统,后二者是地心坐标系统,且后二者的椭球长半轴参数相等。各系统大地坐标投影换算、坐标换带等方法都基本一致,在各种转换中起决定作用的两个参数就是椭球的长半轴a和椭球扁率f,因此本文把各椭球系统抽象为一个抽象的计算类对象,并拥有一些固定的计算方法,即继承接口IEllipsoid,接口实现长半轴、扁率属性,高斯、UTM、墨卡托空间坐标的正反转方法。建立抽象的椭球对象,代表各种椭球及基于该椭球的坐标系统的各种计算方法,抽象对象重写a,f属性后即可实现各类椭球的对象,对象在初始化同时,根据a,f 参数计算该椭球的计算出短半轴(b)、第一、二偏心率、子午圈曲率半径、卯酉圈曲率半径、子午弧长、底点维度等参数,类中方法的实现,有兴趣读者可参考测绘基础教材文献1等资料。public abstract class Ellipsoid : IEllipsoid public virtual double a get;/长半轴虚属性 public virtual double f get;/椭球扁率虚属性其他椭球参数求解及方法实现略 各类椭球对象的实现如:Ellipsoid_CGCS2000对象实现代码:public class Ellipsoid_CGCS2000 : Ellipsoid private double _a = 6378137;private double _f = 1.0 / 298.257222101; public override double a Get return _a; public override double f Get return _f; 北京54椭球、西安80椭球、WGS84椭球等其他椭球实现代码略。3.2 坐标转换对象模型坐标转换对象是建立在空间直角坐标系间转换基础上的,转换参数为七参数,即三个原点位移参数,三个坐标轴旋转角度参数和一个尺度比例参数。并由七参数转换衍生出平面四参数、三参数等转换等。为方便编程管理,建立坐标系统转换对象前,定义常用七参数及四参数数据结构如下:七参数数据结构public struct K7Parameterspublic double Dx; /X轴位移参数public double Dy; /Y轴位移参数public double Dh; /Z轴位移参数public double aX; /X轴旋转角度public double aY; /Y轴旋转角度public double aH; /Z轴旋转角度public double K; /尺度比例系数四参数数据结构public struct K4Parameterspublic double Dx; /X轴位移参数public double Dy; /Y轴位移参数public double a; /X、Y平面旋转角度(即:Z轴旋转角度)public double K; /尺度比例系数坐标系统转换对象的建立,主要实现七参数最小二乘法解算、坐标正反转换功能。public class CoordinateSystem : IDisposable/ 坐标转换参数public K7Parameters K7;/添加重合点坐标对public void AddXYHTwin(string PointName, double X1, double Y1, double H1, double X2, double Y2, double H2)public double BursaWolfImprove(); /布尔萨-沃尔夫转换参数求解public Coordinate3D Transform(Coordinate3D coordA); /坐标转换public Coordinate3D DeTransform(Coordinate3D coordB);/坐标逆转换3.3 坐标转换参数解算转换参数解算是CoordinateSystem对象的主要功能。解算过程实际操作很简单,在初始换CoordinateSystem对象实例后,根据对象添加坐标对的方法,添加不少于4个重合点坐标对后,调用BursaWolfImprove()方法,对象就会按照布尔萨-沃尔夫模型,按照最小二乘法原则解算出转换参数(K7),并给出平差中误差值。平差过程采用间接平差的方法进行,本文对平差过程进行先验参数迭代处理,通过实验可以适合坐标系间大角度旋转参数求解。 坐标转换功能由对象的Transform() 和DeTransform() 方法实现。利用转换矩阵,一套转换参数实现坐标系统的双向转换。亦可设置已有的转换参数,进行坐标转换。同时设计了轻量坐标系统转换类,只负责坐标的双向转换,以实现批量快速的转换和编程扩展应用。 4 对象方法验证4.1 椭球对象验证正反算验证:通过简单编程对各类椭球对象的高斯投影、墨卡托投影、UTM投影正反算、大地坐标与空间直角坐标转换进行验证,在维度090,经度0360度范围内,随机生成任意大地坐标,先进行高斯、墨卡托、UTM投影正算和空间直角坐标转换,然后反算大地坐标并与原坐标比较,经纬度较差小于0.000001秒,证明对象方法实现正确。现有成果验证:本文利用现有湖州地区8个高等级控制点的北京54、西安80大地坐标和对应的高斯投影坐标进行高斯投影正反算验证:正算验证:利用不同的椭球对象,先对已知的大地坐标进行高斯投影计算,然后与成果表进行对比,个别成果点坐标差最大为3.2mm;反算验证:用高斯投影成果数据,反算大地坐标与成果表进行对比,个别成果点较差最大为:0.001秒;其他软件检验:作者用其他投影转换软件进行计算比较,结果与本文方法一致,而产生上述验证误差的原因是成果表投影坐标成果存在一些问题。4.2 坐标转换实验试验步骤:(1)把8个控制点的北京54、西安80大地坐标转换为投影坐标;(2)取前4个的北京54和西安80投影坐标解算七参数(任意四个点,没有考虑点位布局);(3)用七参数对8个点的北京54坐标进行坐标转换,得出8组新坐标;(4)用8组新坐标按照西安80椭球进行投影反算得出8组新大地坐标;(5)用8新大地坐标与原西安80坐标进行比较,结果如下:(表1)表1 转换参数解算及坐标转换比较名称高斯投影UTM投影墨卡托投影空间直角坐标七参数Dx-232-232-24111Dy-215-215-38-103Dh000-79Ax0002E-6Ay000-0Ah7E-067E-061E-5-0K1111dB(max)60E-660E-60.86062474E-6dB(min)3E-63E-6120E-65E-6dL(max)96E-696E-6218E-6116E-6dL(min)3E-63E-636E-610E-6注:表中七参数值均舍去了小数部分,Dx,Dy,Dh单位为米,Ax,Ay,Ah 单位为弧度,dB,dL单位为秒。4.3 CGCS2000与WG

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论