高斯投影正反算及换带计算VB程序设计.doc

高斯投影正反算及换带计算VB程序设计.doc

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
高斯投影正反算及换带计算VB程序设计.doc

摘要 本设计主要阐述了高斯投影分带以及高斯投影坐标正、反算的推导公式,从而根据公式来编写基于VB语言基础上的换带及坐标转换程序。作者系统介绍了测量中经常使用的坐标系以及地图投影的概念和高斯投影的具体含义,叙述了换带和临带计算的原因以及它们在运算时的原理、过程,详细叙述了在VB语言中实现的原理基础以及代码的编写设计。 在设计中根据高斯的正反算公式写出了基于VB语言的程序设计,其程序设计任务完成了由地理坐标向54平面坐标系和80平面坐标系转换的功能,以及由54坐标系和80坐标系向地理坐标系转换的功能,同时也有同一平面坐标系不同投影带之间的换带计算和同一平面坐标系相同投影带临带计算等相互转换的功能。 关键词:高斯投影、坐标正反算、换带计算、临带换算、程序设计 5 程序设计 5.1界面设计 本程序要实现的功能是根据所选择的椭球参数和指定的分带情况,将已知地理坐标或高斯投影坐标经正算和反算求得相应的高斯坐标和地理坐标,以及相应的换带计算和临带计算。因此需要用一个框架控件来组织椭球参数、两个框架分别组织分带选择和换算方式选择,两个框架组织地理坐标和高斯坐标,三个命令按钮分别执行投影计算、换带和临带计算。程序设计界面如图5-1[9] 图5-1 高斯投影计算程序设计界面 命令按钮属性设置表如表5-1 表5-1 命令按钮属性设置表 对象 属性 值 Command1 Caption BL-xy Command1 Name cmdCalc Command2 Caption 6-3 Command2 Name cmdChange Command3 Caption 临带计算 Command3 Name cmdNear 选择椭球框架内控件的属性值表5-2 表5-2 择椭球框架内控件的属性值 对象 属性 值 Text1 Text 6378245 Text1 Name txta Text2 Text 298.3 Text2 Name txtalfa 单选按钮控件属性设置表5-3 5-3 单选按钮控件属性设置表 对象 属性 值 Option1 Caption 六度带 Option1 Name opt6du Option2 Caption 三度带 Option2 Name Opt3du Option3 Caption 正算 Option3 Name optTran Option4 Caption 反算 Option4 Name optCon 5.2程序代码设计 在这里主要介绍高斯投影坐标转换的正反算代码设计,完整的代码见附录1所示。 5.2.1投影计算过程的正算子过程代码设计 ①54系高斯投影正算子过程 Public Sub Pro54() Dim ll#, N#, a0#, a4#, a6#, a3#, a5#, cosB# cosB = Cos(B) ll = L - DoToHu(L0) N = 6399698.902 - (21562.267 - (108.973 - 0.612 * cosB * cosB) * cosB * cosB) * cosB * cosB a0 = 32140.404 - (135.3302 - (0.7092 - 0.004 * cosB * cosB) * cosB * cosB) * cosB * cosB a4 = (0.25 + 0.00252 * cosB * cosB) * cosB * cosB - 0.04166 a6 = (0.166 * cosB * cosB - 0.084) * cosB * cosB a3 = (0.3333333 + 0.001123 * cosB * cosB) * cosB * cosB - 0.1666667 a5 = 0.0083 - (0.1667 - (0.1968 + 0.004 * cosB * cosB) * cosB * cosB) * cosB * cosB X = 6367558.4969 * B - (a0 - (0.5 + (a4 + a6 * ll * ll) * ll * ll) * ll * ll * N) * Sin(B) * cosB Y = (1 + (a3 + a5 * ll * ll) * ll * ll) * ll * N * cosB End Sub ②80系高斯投影正算子过程 Public Sub Pro80() Dim ll#, N#, a0#, a4#, a6#, a3#,

您可能关注的文档

文档评论(0)

czy2014 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档