大地坐标与高斯坐标的转换程序研究和精度分析

2011-09-27 10:43胡圣武
地理空间信息 2011年2期
关键词:椭球纬度高斯

许 磊,胡圣武

(1.铁道第三勘察设计院集团有限公司,天津 300251;2.河南理工大学测绘学院,河南焦作 454000)

大地坐标与高斯坐标的转换程序研究和精度分析

许 磊1,胡圣武2

(1.铁道第三勘察设计院集团有限公司,天津 300251;2.河南理工大学测绘学院,河南焦作 454000)

在分析了大地坐标与高斯坐标的转换公式的基础上,得到了适应电算的公式。采用编多个子程序的方法实现二者之间的转换,编程实现了北京54坐标、西安80坐标和30带高斯坐标和60带高斯坐标之间的转换;对转换的成果的精度进行分析,得到了如下的结论:用转换程序所得到的坐标精度能满足日常的生产使用,但存在着一定的误差。

大地坐标系;高斯坐标;坐标转换;精度分析

在我国多种常用的坐标系并存,即54坐标系、80坐标系和2000坐标系[1-4]。54坐标系和80坐标系是二维坐标系统,由于大地坐标在制图和计算施工时都很不方便,而高斯投影下的平面坐标被广泛运用[5-8]。二者需要相互转换,当有不同需求时,转换的精度也会有不同要求。本文研究了大地坐标和高斯坐标的适应编程的实用公式,并编程实现大地坐标和高斯坐标的相互之间的转换,并对转换成果的精度进行了分析。

1 适用于电算的高斯坐标计算的公式

由于要进行计算机编程计算,而高斯正反算公式并不利于编程计算,所以要对其作简化处理,主要是根据要求的精度。

为了适应计算机程序的编写,对原高斯正算公式作进一步变化,如下:

为了适应计算机程序的编写,对原高斯反算公式作进一步变化,如下:

2 大地坐标转化为高斯坐标

2.1 程序分析

大地坐标转化为高斯坐标即高斯正算,要用高斯正算公式(1)。

从高斯正算公式中很容易看出:我们并不能直接得到结果还需要弧长公式和卯酉圈半径公式,如下:

要根据所给的经度和几度带投影,求得中央子午线经度;然后求得经差与投影代号,此部分用一个函数实现。函数名为:private intCentralMeridian(double L,outdouble l)。

求时需用到子午弧长公式,而子午线弧长求得也比较复杂,所以也要另写一个函数用来根据大地纬度B求子午线弧长。所以此函数参数是 B,返回值弧长X。函数名为:private doubleGetRLX(double B)。

总函数的编写,先定义正算公式里能用到的变量和调用上面所说的 2个函数,其他的变量可以用基本公式直接求得;然后用这些变量写出高斯正算的计算公式。函数名为:public void BL_xy(double B,double L,outdoublex,outdoubley)。日常使用的角度是度分秒形式的,而在计算机一般都是弧度制。所以要把度分秒转换成弧度制的,所使用的函数是:privatedoubleangle_radian(doubleanlge)。

把上面所使用的函数都编写在一个类里面,这样方便分块编写和灵活使用。此类名:RefeFenceEllipsoid此类的属性包括:a表示椭球长半径;f表示椭球扁率;DUDAI表示几度带投影;公有成员即:BL_xy表示高斯正算函数。

下拉列表框 combox1当选择不同的椭球(只有WGS84,BJ54,西安80供选择)时就相应的改变类的属性a,f;combox2当选择不同投影带(只有3°、6°带的选择)时就改变类中的相应值。当点击“正算>”按钮时:取textbox1.text为B;取textbox2.text为L;然后调用类的公有成员“*.BL_xy(double B,double L, outdouble x,outdouble y);”这样就得到高斯正算坐标(x,y)。

设计程序的主要功能:①能够实现不同椭球下的高斯正算:WGS84,BJ54,西安80;②在同一椭球下有高斯30带与60带的换算。

在输入大地纬度和经度时格式:ddd:ff:mm.mmm mm。

在选择相应的椭球与高斯投影带时,输入要转换的大地坐标,点击正算按钮,得到的高斯坐标,y坐标没有加500 km,也没有加相应的投影带号,程序界面如图1所示。

图1 主程序界面

2.2 实例数据

高斯正算实例结果如下:

表1 BJ54的高斯投影3°带表

图2 BJ54下的高斯投影30带计算界面

图3 BJ54下的高斯投影60带计算界面

表2 BJ54的高斯投影6°带表

表3 西安80的高斯投影3°带表

图3 BJ54下的高斯投影60带计算界面

图4西安80下的高斯投影30带计算界面

表4 西安80的高斯投影6°带表

图5 西安80下的高斯投影60带计算界面

2.3 结果分析

根据所得数据:无论在任何椭球还是在不同高斯投影带下,精度都可以达到0.000 000 01"以上。

相同投影带下:纬度的差值随纬度的增大而相应的增大,经度的差值主要与经差有密切关系,而与纬度增大而有微小的减小。高斯投影30带的精度稍微高些。

离中央子午线越近精度也越高。

综上所述根据数据计算的结果,基本符合正形投影原理和投影变形理论。

3 高斯坐标转化为大地坐标

3.1 程序分析

高斯坐标转化为大地坐标就是高斯反算过程所使用的高斯反算公式(2)。在公式中Bf是最重要的求解过程,而Nf可以使用高斯正算时的N求解过程,所以Bf求解是使用迭代的方法。

在编程过程中,对高斯反算公式做以下分析:

在高斯反算公式里最重要的就是Bf,就是根据x坐标求底点大地纬度:由子午线弧长求大地纬度,另写一个函数实现。函数名为:privatedoubleGetB(doublex)。

总函数的编写,先定义反算后公式能用到的变量,然后调用上面所说的函数,其他的变量可以直接求得,最后用这些变量写出高斯反算的计算公式即可。函数名为:publicvoid xy_BL(doublex,doubley,outdouble B,outdouble L)。

所使用的角度转换问题已经在高斯正算的过程中得到解决。只需要把高斯反算过程中所必须的函数编写添加在RefeFenceEllipsoid类的里面的公有成员:xy_ BL表示高斯反算函数以及迭代求大地底点纬度的私用函数也要写在此类的里面。

反算过程流程:在点击“<反算”按钮时:取textbox3.text为;取textbox4.text为;然后调用类的公有成员“*.xy_BL(double x,double y,outdouble B,out double L);”这样就用高斯反算公式得到大地坐标B,L。

3.2 实例数据

高斯反算实例结果如下:

表5 BJ54高斯反算3°带投影表

图6 BJ54的高斯反算30带计算界面

图7 BJ54的高斯反算60带计算界面

表6 BJ54高斯反算6°带投影表

表7 西安80的高斯反算3°带投影表

图8 西安80的高斯反算30带计算界面

图9 西安80的高斯反算60带计算界面

表8 西安80的高斯反算6°带投影表

3.3 结果分析

高斯平面坐标的坐标是离相应的中央子午线的经差投影到平面上,所以有正负之分,而标准的国家坐标为了避免负坐标的产生向东加500 km,为了区分投影在前面再加投影代号,所以有了投影代号就能得到相应的中央子午线。而上面的都是没有加投影代号的,所以要指定中央经度和几度带投影。

由上面数据可知,精度都是相当高不过也有微小的差别,相同投影带下:坐标的差值与纬度相关,即随着纬度的增大差值也增大;坐标的差值与经差相关,随着经差的增大差值也增大。不同投影带下:30带投影都比相应的60带投影精度高。

在进行正反算的时候所使用的公式都是进行严格推导的,可以解决由平面直角坐标反解地理坐标问题并可获得足够的精确度,且实时性强,满足工作的需求,并可应用于其他相关领域。

4结 语

根据本文所采用的转换公式能满足生产上的应用,具有实际应用价值。高斯正反算用计算机编程计算其结果是有一定误差的。

[1] 孔祥元,郭际明,刘宗泉.大地测量基础[M].武汉:武汉大学出版社,2001

[2] 熊介.椭球大地测量学[M].北京:解放军出版社,1988

[3] 宁津生,刘经南,陈俊勇,等.现代大地测量理论与技术[M].武汉:武汉大学出版社,2006

[4] 杨启和.地图投影变换原理与方法[M].北京:解放军出版社,1989

[5] 徐绍铨,吴祖仰.大地测量学[M].武汉:武汉测绘科技大学出版社,1996

[6] 徐正扬,刘振华,吴国良.大地控制测量学[M].北京:解放军出版社,1992

[7] 朱华统.大地坐标系的建立[M].北京:测绘出版社,1986

[8] 边少锋.大地坐标系与大地基准[M].北京:国防工业出版社,2005

Transformation Program and Precision Analysisbetween Geodetic Coordinateand Gauss Plane Coordinate

by XU Lei

The paper gained formula thatadopted computer computation based analyzing transformation formula between geodetic coordinate and Gauss plane coordinate.Itadoptedmethod thatprogramsmany subprogram and realized transformation between geodetic coordinate and Gauss plane coordinate,programs to realize transformation Beijing 54 coordinate,Xi'an 1980 coordinate,30 band Gauss plane coordinate and 60 band Gauss plane coordinate.The paper analyzed precision about transformation results,drew a conclusion thatitcanmeetordinary production useadapting the transformation program,but therewasa little error.

Geodetic coordinates,Gaussian Cartesian coordinates,coordinate transformation,precision analysis (Page:60)

P226.3

B

1672-4623(2011)02-0060-04

2010-00-00

项目来源:国家自然科学基金资助项目(40474003)。

许磊,硕士,主要从事高速铁路精密控制测量、城市轨道交通变形监测、地面激光扫描仪数据处理、摄影测量等应用研究。

猜你喜欢
椭球纬度高斯
独立坐标系椭球变换与坐标换算
椭球槽宏程序编制及其Vericut仿真
数学王子高斯
天才数学家——高斯
椭球精加工轨迹及程序设计
基于外定界椭球集员估计的纯方位目标跟踪
纬度
从自卑到自信 瑞恩·高斯林
常用纬度差异极值符号表达式