基于Visual C++的高斯投影坐标反算.pdfVIP

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

基于VisualC++的高斯投影坐标反算

许大亮

【摘要】文中利用VisualC++语言编写高斯投影坐标反算的程序,采用的数据是

西安80椭球参数和高斯坐标;首先根据子午线弧长公式迭代计算求出垂足纬度,

其次算出大地纬度和经差,最后可以得到大地坐标。程序计算出的坐标精度为

0.0001″。结果表明:用转换程序解算出的坐标存在一定的误差,但是可以满足低

精度的工程建设。%UsingVisualC++languagedoestheGaussprojective

coordinateinversecalculation.ThedataisXian80ellipsoidparametersand

gausscoordinates;first,accordingtothemeridianarclengthformulacan

getlatitudesoftheperpendicularfootwithiterativecomputation,

secondlycalculatethelatitudeandthedifferenceoflongitude,finallythe

geodeticcoordinatesareachieved.Theaccuracyofthecoordinatewhichis

calculatedbythecomputerprogramis0.0001″.Theresultsshowthatthe

conversionprogramhascertainerrorwhenitdoesgaussinverse

calculation,butitissuitableforengineeringconstructionoflowaccuracy.

【期刊名称】《科技创新与生产力》

【年(卷),期】2015(000)008

【总页数】3页(P59-60,63)

【关键词】VisualC++语言;坐标反算;高斯坐标;垂足纬度

【作者】许大亮

【作者单位】安徽理工大学测绘学院,安徽淮南232001

【正文语种】中文

【中图分类】TP311

当前,在我国常用的坐标系有北京54坐标系、西安80坐标系、WGS-84坐标和

2000国家大地坐标系[1-2]。高斯投影坐标转换成为大地坐标(高斯反算),其

中一个重要的问题就是如何准确、快速地计算出垂足纬度。因此,垂足纬度的准确

性决定着换算后坐标的精度。在垂足纬度的计算中,常采用迭代计算的方法。笔者

参考了一些文献、著作,利用VisualC++语言设计了一个程序,实现了高斯投影

坐标转换成西安80大地坐标,计算结果精确可靠,使用方便。

1.1高斯坐标反算公式

式中:Bf为垂足纬度;Mf为子午圈曲率半径[1]。其中Nf,tf,ηf等脚注为“f”

的均为Bf的函数,也就是说,它们都是将垂足纬度Bf的数值带入相应的公式后求

得[2]。

1.2子午圈弧长公式

1.3Mf,Nf,tf,ηf等关于Bf的公式

地球椭球的长半径为a,短半径为b。

第一偏心率

第二偏心率

t=tanB,η=ecosB.

为了简化公式的书写[2],引入两个大地纬度B的函数符号

极曲率半径

子午圈曲率半径

卯酉圈曲率半径

2.1程序运行环境

该程序是基于VisualC++6.0环境下开发的控制台程序。

2.2程序运行流程

程序运行流程见图1。

2.3主要代码

编写doublegetBf(doublex)函数计算出垂足纬度,代码为

函数体中重复迭代直到

现在工程建设中一般要求(L,B)计算至0.01″和0.0001″,当要求精度为0.01″

时,可将式(5)中不等式右端的值换为10-6,可以按照具体要求进行改动[3]。

大地纬度B和经差的计算函数为

在VisualC++6.0环境下运行,按顺序输入高斯值坐标(x,y),然后单击回车

键运行出结果。程序先计算出垂足纬度,然后算得以垂足纬度为变量的子午圈曲率

半径,卯酉圈曲率半径等数值,将他们带入高斯坐标反算的公式计算出大地经度和

纬度。对于不同的大地椭球,只需要知道椭球参数,即可在高斯反算下进行计算。

由于计算误差的存在,该程序程序精确度为0.000

文档评论(0)

175****9697 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档