# 高斯坐标正反算算法
# 在正算的时候,y的第一个数字表示是用几度带换算的,第二个数字和第三个数字表示带号
# 该程序是根据武汉大学出版社出版的第三版的《大地测量学基础》编写
# 用于课程实验学习

下面以克氏椭球参数3度带为例进行编程,需要详细的所有的3度带和6度带的各种椭球参数的高斯投影正反算程序代码,可以在本人的上传资料中下载

正算代码:采用的是克氏椭球参数

import math as mP = 180 / m.pi * 3600  # 1弧度的秒数常数值,1弧度=180/pi=57.29578*3600=206264.80624709636def GetGS_ZS_KS_3(b, L):# 克氏椭球高斯正算l = (L - Get3DL0(L)[0]) * 3600 / Pcos2b = m.pow(m.cos(m.radians(b)), 2)N = 6399698.902 - (21562.267 - (108.973 - 0.612 * cos2b) * cos2b) * cos2b  # P.187a0 = 32140.404 - (135.3302 - (0.7092 - 0.0040 * cos2b) * cos2b) * cos2ba4 = (0.25 + 0.00252 * cos2b) * cos2b - 0.04166a6 = (0.166 * cos2b - 0.084) * cos2ba3 = (0.3333333 + 0.001123 * cos2b) * cos2b - 0.1666667a5 = 0.0083 - (0.1667 - (0.1968 + 0.0040 * cos2b) * cos2b) * cos2bx = 6367558.4969 * b * 3600 / P - (a0 - (0.5 + (a4 + a6 * m.pow(l, 2)) * m.pow(l, 2)) * m.pow(l, 2) * N) * m.sin(m.radians(b)) * m.cos(m.radians(b))y = (1 + (a3 + a5 * m.pow(l, 2)) * m.pow(l, 2)) * l * N * m.cos(m.radians(b)) + Get3DL0(L)[1] * 1000000 + 500000 + 300000000# 坐标加3度带带号,y坐标西移500000M,加3000000000在开头第一个数字为3,表示为是三度带的转换return x, y

反算代码:采用的是克氏椭球参数

def GetGS_FS_KS_3(x, y, L0):# 克氏椭球高斯反算y = y - L0 / 3 * 1000000 - 500000 - 300000000  # 去掉带号和y坐标恢复东移500000MbT = x / 6367558.4969  # bT=x/6367558.4969*P 得到是秒数,不乘P直接得到弧度数值beta = x / 6367558.4969 * P  # 得到是秒数cos2bT = m.pow(m.cos(bT), 2)Bf = (beta + (50221746 + (293622 + (2350 + 22 * cos2bT) * cos2bT) * cos2bT) * m.pow(10, -10) * m.cos(bT) * m.sin(bT)*P)/Pcos2Bf = m.pow(m.cos(Bf), 2)Nf = 6399698.902 - (21562.267 - (108.973 - 0.612 * cos2Bf) * cos2Bf) * cos2BfZ = y / (Nf * m.cos(Bf))b2 = (0.5 + 0.003369 * cos2Bf) * m.sin(Bf) * m.cos(Bf)b3 = 0.333333 - (0.166667 - 0.001123 * cos2Bf) * cos2Bfb4 = 0.25 + (0.16161 + 0.00562 * cos2Bf) * cos2Bfb5 = 0.2 - (0.1667 - 0.0088 * cos2Bf) * cos2Bfb = (Bf * P - (1 - (b4 - 0.12 * m.pow(Z, 2)) * m.pow(Z, 2)) * m.pow(Z, 2) * b2 * P) / 3600.0l = ((1 - (b3 - b5 * m.pow(Z, 2)) * m.pow(Z, 2)) * Z * P) / 3600.0L = L0 + lreturn b, L

测试数据如下:

正算:

print("程序运行示例如下:")
print("高斯投影正算,克氏椭球参数,用3度带表示,最前面有一个3表示带的种类(小数点前有九位数):")
print("输入B,L")
print(GetGS_ZS_KS_3(30.5, 114 + 1 / 3))

反算:

print("高斯投影反算,克氏椭球参数,带有三度带带号,最前面还有一个3表示带的种类(小数点前有九位数):")
print("第一个和第二个参数分别是x,y,第三个输入的参数是中央子午线")
print(GetGS_FS_KS_3(3375648.958456849, 338532000.2685031, 114))

运行结果如下:

正算:

程序运行示例如下:
高斯投影正算,克氏椭球参数,用3度带表示,最前面有一个3表示带的种类(小数点前有九位数):
输入B,L
(3375648.958456849, 338532000.2685031)

反算:

高斯投影反算,克氏椭球参数,带有三度带带号,最前面还有一个3表示带的种类(小数点前有九位数):
第一个和第二个参数分别是x,y,第三个输入的参数是中央子午线
(30.500000005448364, 114.33333333335709)

高斯投影坐标正反算算法(python)相关推荐

  1. 高斯坐标正反算c语言,高斯投影坐标正反算编程报告

    <高斯投影坐标正反算编程报告>由会员分享,可在线阅读,更多相关<高斯投影坐标正反算编程报告(11页珍藏版)>请在人人文库网上搜索. 1.高斯投影坐标正反算编程报告1. 编程思想 ...

  2. 高斯投影坐标正反算公式

    §8.3高斯投影坐标正反算公式 任何一种投影①坐标对应关系是最主要的:②如果是正形投影,除了满足正形投影的条件外(C-R偏微分方程),还有它本身的特殊条件. 8.3.1高斯投影坐标正算公式:  高斯投 ...

  3. 坐标反算c语言程序,道路坐标正反算无限个拐点计算器测量程序(新20070825)

    <道路坐标正反算无限个拐点计算器测量程序(新20070825)>由会员分享,可在线阅读,更多相关<道路坐标正反算无限个拐点计算器测量程序(新20070825)(10页珍藏版)> ...

  4. matlab写函数进行坐标正反算,基于matlab的坐标正反算

    <基于matlab的坐标正反算>由会员分享,可在线阅读,更多相关<基于matlab的坐标正反算(6页珍藏版)>请在人人文库网上搜索. 1.基于 matlab 的坐标正反算测量程 ...

  5. 高斯投影法正反算代码MATLAB版本

    高斯投影法正反算代码MATLAB版本 说明 高斯投影正算 高斯投影反算 说明 之前一个帖子给出了正反算的C语言代码 链接如下: link 我把它移植到了matlab中 支持向量输入 高斯投影正算 高斯 ...

  6. 坐标正反算通用程序(极短篇)

    第一篇  坐标正反算通用程序(极短篇) 1. 坐标正算主程序(命名为ZBZS) 第1行:Lbl  0:{W,T,B}:W"K=":T"LEN=":B 第2行:P ...

  7. 高斯投影坐标正算公式详解

    高斯投影坐标正算 高斯投影又称横轴椭圆柱等角投影. 高斯投影6度带,自0度带子午线起每隔经差6度自西向东分带,一次编号1,2,3,-.我国6度带中央子午线的经度,由69度起每隔6度而至135度,共计1 ...

  8. 坐标反算用计算机怎么算,卡西欧5800计算器坐标正反算程序

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 主程序坐标正反算 程序名称:ZBZFS Lb1   A↙ 30→Dim Z :"0=ZS,1=FS"?Z ↙ If   Z=0:The ...

  9. 西欧5800计算器坐标正反算程序

    西欧5800计算器坐标正反算程序   讲你个讲  1位粉丝 1楼 主程序   坐标正反算 程序名称:ZBZFS Lb1   A↙ 30→Dim Z :"0=ZS,1=FS"?Z ↙ ...

最新文章

  1. QIIME 2教程. 13训练特征分类器Training feature classifiers(2020.11)
  2. k8s nodeport下访问请求未被分发到所有node的排错(转)
  3. 爬虫 无访问权限“_Windows10电脑系统共享打印机无访问权限解决方法
  4. matlab2012b帮助中字体大小调整
  5. vue 圆形百分比进度条_uniapp Vue 圆环进度条
  6. 诺基亚7plus支持html,【诺基亚7Plus评测】外观:全面屏是最大亮点_诺基亚 7 Plus(4GB RAM/全网通)_手机评测-中关村在线...
  7. SIGPIPE信号处理
  8. VS Tips (Basic part)
  9. 沈阳python需求大吗_学习Python之后都能做什么,沈阳Python薪资多少钱
  10. 采用python的pyquery引擎做网页爬虫,进行数据分析
  11. java 注册表 下载_Java修改windows注册表(完全修改)
  12. 大华服务器如何修改IP,大华摄像头更改IP地址
  13. 网络RJ45接口详解
  14. android抠图软件,手机抠图软件
  15. C语言运行机制(过程)简述
  16. Mysql支持的数据类型
  17. Startup.s文件
  18. funcode之c++版弹弹堂(第一个设计实验)
  19. python display方法_Python display.Image方法代码示例
  20. predefined Serial item

热门文章

  1. 【PTA|Python】浙大版《Python 程序设计》题目集:第五章
  2. 昨日西红柿 今日迷你挑 京东上市蒙阴影
  3. Ubuntu格式化U盘
  4. CSS中继承性属性和非继承性的属性
  5. 【matlab】 隐函数作图函数 ezplot
  6. 最新ThinkPHP微信独立精彩互换抢红包系统源码开源版
  7. 解析大乐透,预测股票信息入库
  8. 小型初创公司Trisymbiotic IP(R)宣布,其美国专利10,020,436的设施效率超越美国和中国最快的超级计算机
  9. 小鸟云独享虚拟主机和共享虚拟主机区别对比
  10. WebSocket之仿QQWeb即时聊天系统(下)