C#高斯换带解析ppt课件.ppt
《C#高斯换带解析ppt课件.ppt》由会员分享,可在线阅读,更多相关《C#高斯换带解析ppt课件.ppt(31页珍藏版)》请在三一办公上搜索。
1、高斯投影换带计算,专业:测绘工程班级:测绘2班,高斯投影换带计算,1.设计内容 1.1设计意义 1.2基础理论 1.3数据流程图 1.4详细设计2.功能实现2.1关键技术和难点2.2程序使用说明书 3.总结,1.设计内容,1.1设计意义 在实际测量工作中,我们常常遇到坐标不统一的情况,为了计算简便,把不同形式的坐标转换成我们所需的坐标,为我们的工程服务,经常需要进行高斯投影正算、反算、坐标换带和子午线收敛角的计算工作。为此,我们编写了这一程序设计,希望能使以后的转换工作更加简便。本软件主要应用相关的转换公式,采用C#编程可随时随地实现任何参考椭球体下高斯坐标转换与大地坐标之间的正反算和换带计算
2、,达到高斯平面坐标转换的目的。本文所编程序的特点是,操作简单输出简捷、结果完整,不需要另加辅助内容。,高斯投影虽然保证了角度投影前后没有变形,但其长度变形仍然存在,并且距离中央子午线愈远,长度变形愈大。为了限制高斯投影的长度变形,将椭球面按一定经度的子午线划分成不同的投影带,把投影范围限制在中央子午线东西两侧一定的狭长地带内分别进行投影。由于中央子午线的经度不同,使得椭球面上统一的大地坐标系,分割成为各带独立的平面坐标系。为了得到统一的坐标系,必须进行换带计算。,1.2基础理论 利用高斯正反算间接换带,把椭球面上的大地坐标作为过渡坐标:,这种方法,理论上最简明严密,精度最高,通用性最强。不仅适
3、用于3-3带以及6-3带互相之间的邻带坐标换算,且适用于任意带之间的坐标换算。虽计算量稍大,但由于计算机的普及和本法的通用性及计算的高精度,它自然便成为坐标邻带换算中最基本的方法。,反算,正算,计算和数据模型,正算是指:由大地坐标(L,B)求得高斯平面坐标(x,y)的过程。反算是指:由高斯平面坐标(x,y)求得大地坐标(L,B)的过程。正算:高斯投影必须满足的三个条件:(1),中央子午线投影后为直线。(2),中央子午线投影后长度不变。(3),投影具有正性性质,即正性投影条件。由第一个条件可知,中央子午线东西两侧的投影必然对称于中央子午线。设在托球面上有P1 ,P2,且对称于中央子午线。其大地坐
4、标为(l,B),(-l,B)则投影后的平面坐标一定为P1(x,y),P2(x,-y).由第二个条件可知,位于中央子午线上的点,投影后的纵坐标x应该等于投影前从赤道量至该点的子午弧长。,反算:在高斯投影坐标反算时,原面是高斯平面,投影面是椭球面,则有如下的投影方程:则其的三个条件:(1)x坐标轴投影成中央子午线,是投影的对称轴;(2)x轴上的长度投影保持不变;(3)正性投影条件。,高斯反算公式(克氏椭球),高斯反算公式(IAG椭球),高斯正算公式:(克氏椭球),高斯正算公式:(IAG椭球),1.3数据流程图,1.4详细设计 主要研究内容是利用C#软件把高斯换带计算从手算到实现电算的一个过程。 主
5、要分为四个界面(1)欢迎界面,(2)主程序界面,(2)主程序界面,(3)带号与中央子午线转换界面,(4)弧度角度转换界面,2.功能实现,2.1关键技术和难点/ / 反算函数 / public void FS() / 克氏椭球反算 if (radioButton1.Checked = true) = x / 6367558.4969; Bf = + (50221746 + (293622 + (2350 + 22 * Math.Pow (Math.Cos() ,2) * Math.Pow (Math.Cos() ,2) * Math.Pow (Math.Cos() ,2) * Math .Pow
6、 (10,-10) * Math.Sin() * Math.Cos(); Nf = 6399698.902 - (21562.267 - (108.973 - 0.612 * Math.Pow(Math.Cos(Bf), 2) * Math.Pow(Math.Cos(Bf), 2) * Math.Pow(Math.Cos(Bf), 2); Z = y / (Nf * Math.Cos(Bf); b2 = (0.5 + 0.003369 * Math.Pow(Math.Cos(Bf), 2) * Math.Sin(Bf) * Math.Cos(Bf); b3 = 0.333333 - (0.16
7、6667 - 0.001123 * Math.Pow(Math.Cos(Bf), 2) * Math.Pow(Math.Cos(Bf), 2); b4 = 0.25 + (0.16161 + 0.00562 * Math.Pow(Math.Cos(Bf), 2) * Math.Pow(Math.Cos(Bf), 2); b5 = 0.2 - (0.1667 - 0.0088 * Math.Pow(Math.Cos(Bf), 2) * Math.Pow(Math.Cos(Bf), 2); B = Bf - (1 - (b4 - 0.12 * Z * Z) * Z * Z) * Z * Z * b
8、2; B1 = redian_a(B); l = (1 - (b3 - b5 * Z * Z) * Z * Z) * Z; L = L01 + l; L1 = redian_a(L); ,/ IAG椭球反算 else = x / 6367452.1328; Bf = + (50228976 + (293697 + (2383 + 22 * Math.Pow(Math.Cos(), 2) * Math.Pow(Math.Cos(), 2) * Math.Pow(Math.Cos(), 2) * Math.Pow(10, -10) * Math.Sin() * Math.Cos(); Nf = 6
9、399596.652 - (21565.045 - (108.996 - 0.603 * Math.Pow(Math.Cos(Bf), 2) * Math.Pow(Math.Cos(Bf), 2) * Math.Pow(Math.Cos(Bf), 2); Z = y / (Nf * Math.Cos(Bf); b2 = (0.5 + 0.00336975 * Math.Pow(Math.Cos(Bf), 2) * Math.Sin(Bf) * Math.Cos(Bf); b3 = 0.3333333 - (0.1666667 - 0.001123 * Math.Pow(Math.Cos(Bf)
10、, 2) * Math.Pow(Math.Cos(Bf), 2); b4 = 0.25 + (0.161612 + 0.005617 * Math.Pow(Math.Cos(Bf), 2) * Math.Pow(Math.Cos(Bf), 2); b5 = 0.2 - (0.16667 - 0.00878 * Math.Pow(Math.Cos(Bf), 2) * Math.Pow(Math.Cos(Bf), 2); B = Bf - (1 - (b4 - 0.147 * Z * Z) * Z * Z) * Z * Z * b2; B1 = redian_a(B); l = (1 - (b3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 高斯换带 解析 ppt 课件

链接地址:https://www.31ppt.com/p-1375499.html