手持GPS坐标系转换_第1页
手持GPS坐标系转换_第2页
手持GPS坐标系转换_第3页
手持GPS坐标系转换_第4页
全文预览已结束

下载本文档

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

文档简介

1、手持GPS坐标系转换(2010-12-31 01:04:33) 转载标签: 杂谈分类: 关于地理信息系统 手持GPS坐标系转换山寨蚂蚁手持GPS基本都采用WGS1984坐标系统,而在工程实际中我们常用的是投影坐标系,如北京54坐标或西安80,以及最新的国家大地坐标系CGCS2000等等。不同坐标系之间主要存在平移和旋转的关系。在进行坐标系之间的转换时,首先需要求出它们之间的转换参数。两种坐标系之间的转换常用有七参数法、五参数法和三参数法。手持GPS一般采用五参数法,即需要用户输入五个参数(DX、DY、DZ、DA、DF)(分别为X偏差值、Y偏差值、Z偏差值、长半轴偏差值和扁率偏差值),这五个参数

2、可以通过反算来获取。在一个地域比较开阔、卫星信号强、无电磁波干扰的位置找一个控制点,该控制点的高斯平面坐标(x,y)已知。如果是进行北京54与WGS1984间的转换,则需要知道该点在54坐标系下的平面坐标(x,y);如果是进行西安80与WGS1984间的转换,则需要知道该点在80坐标系下的平面坐标(x,y)。此外,还需要确定该点的高程h及高程异常值(如果不知道可以取0)。利用手持GPS在该点测得该点的经度L、纬度B和高程H,在手持GPS中如果默认采用WGS1984坐标系则此处测得的经纬度及高程都是指WGS1984坐标系下的值(手持GPS一般都内置了该坐标系)。对于空间中同一点,大地坐标系与空间

3、直角坐标系存在下列关系:三种坐标系的椭球参数如下:坐标系长半轴A(m)第一偏心率平方E2扁率FWGS198463781370.006694379990131/298.257223563北京5463782450.0066934271/298.3西安8063781400.0066943851/298.257根据WGS1984坐标系下测得的经纬度及高程(L,B,H)及采用的椭球参数,利用前面的公式即可求得x1、y1、z1、A1、F1。其中A1和F1即WGS1984坐标系采用的椭球参数中长半轴A和扁率F。如果已知控制点的坐标只是高斯平面直角坐标(x,y),则应把平面直角坐标(x,y)代人高斯投影反算公

4、式,求出大地坐标值(B,L),然后再代入式(1)求得该点的三维直角坐标(x2,y2,z2)。通过高斯反算计算出B、L后,在代人式(1)求得三维直角坐标(x2,y2,z2)。已知该点的三维直角坐标(x2,y2,z2),以及该点的平面坐标系采用的椭球参数长半轴A2和扁率F2。五参数即可通过下式求得:DX=x1-x2DY=y1-y2DZ=z1-z2DA=A1-A2DF=F1-F2一般DA、DF都是常数,DX、DY、DZ对于不同地区值也不相同。在五参数求出后,输入手持GPS中(采用自定义坐标系),同时输入测区中央子午经度、东西偏差、南北偏差。其中关于中央子午线经度设置需要考虑是3度带还是6度带,对于3

5、度带,中央子午线经度为3的倍数,其适用范围从中央子午线经度左侧1.5°到右侧1.5°之间,举例说明,如果现在某点位置在东经112°32,即112.5333°(将分秒单位转换成°)除以3等于37.51,37.51大于37.5,即表示该点不在37号带范围内(因为37号带的适用范围是从109°30至112°30),该点在38号带范围内(38号带的范围是从112°30至115°30),38号带的中央子午经度为38*3°=114°。对于六度带也是类似,其适用范围从中央子午经线左侧3°至

6、右侧3°。设置东西偏差的原因主要是为避免在横向坐标值中出现负值,一般东西偏差为500 000m。另外,由于我国在北半球,所以在纵向坐标中不会出现负值,所以南北偏差为0。在进行五参数设置后,可以到实地进行一下控制点坐标的测量,已检验参数是否正确。对于目前市场上的手持GPS,主要为单点定位,其平面精度一般都优于10米,在野外大比例尺的数据采集中精度已足够。另外,许多情况下只知道椭球的长半轴和短半轴,还需要采用下式来求得扁率、第一偏心率、第二偏心率。已知椭球长半轴为A,短半轴为B,则有:五参数计算程序参考如下:/计算投影坐标下的高斯反算    

7、60;           double x, y;                x = X2; y = Y2-500000;                doubl

8、e E = k0 * x;                double sinE=Math.Sin(E);                double Bf = E + Math.Cos(E) * (k1 * sinE - k2 * sinE * sinE * sinE + k3

9、 * sinE * sinE * sinE * sinE * sinE -                    k4 * sinE * sinE * sinE * sinE * sinE * sinE * sinE);               

10、 double t = Math.Tan(Bf);                double g2 = e12 * Math.Pow(Math.Cos(Bf), 2);                double V2 = 1 + g2;  

11、60;             double l0 = y * Math.Sqrt(V2) / c;                double _B1 = -V2 * t * l0 * l0 * 0.5d;        

12、60;       double _B2 = (5 + 3 * t * t + g2 - 9 * g2 * t * t) * V2 * t * l0 * l0 * l0 * l0 / 24d;                double _B3 = -(6 * 1 + 90 * t * t + 45 * t * t * t * t) * V2 * t * l0 * l

13、0 * l0 * l0 * l0 * l0 / 720d;                double _B = Bf + _B1 + _B2 + _B3;                double _L = (l0 - (1 + 2 * t * t + g2) / 6 * l

14、0 * l0 * l0 + (5 + 28 * t * t + 24 * t * t * t * t + 6 * g2 + 8 * t * t * g2) * l0 * l0 * l0 * l0 * l0 / 120) / Math.Cos(Bf);                double centerL = 0;          

15、      if (splitcomboBox1.Text != "")                                    double t

16、empL = L * 180d / Math.PI;                    if (splitcomboBox1.Text = "三度带")                  

17、0;                         centerL = (int)(tempL / 3) * 3;                   

18、60;                    else if (splitcomboBox1.Text = "六度带")                     

19、0;                      centerL = (int)(tempL / 6) * 6;                      

20、60;                             double L0 = centerL * Math.PI / 180; ;              &

21、#160; _L += L0;                /根据高斯投影反算结果去求直角坐标值                tempESinB = e2 * Math.Pow(Math.Sin(_B), 2);    

22、60;           N = A2 / Math.Sqrt(1 - tempESinB);                double H2 = Z2;              &#

23、160; X2 = (N + H2) * Math.Cos(_B) * Math.Cos(_L);                Y2 = (N + H2) * Math.Cos(_B) * Math.Sin(_L);                Z2 = (N *

24、(1 - e2) + H2) * Math.Sin(_B);                /计算五参数                DX = X1 - X2;          

25、;      DY = Y1 - Y2;                DZ = Z1 - Z2;                DA = A1 - A2;                DF = F1 - F2;                string tempString = "五参数计算结果:n"           

温馨提示

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

评论

0/150

提交评论