作业顺便记录一下,场面监视
1.两个函数一个是大地坐标转换球坐标Geodetic_to_spherical;一个是球坐标转换大地坐标spherical_to_Geodetic。
2.WGS84坐标系的参数:长半轴r=6378137,椭球扁率:f=1/298.257223563,短半轴b=r*(1-f),第一辅助系数W通过公式W=√(1-e²sin²B) B为纬度。椭圆曲率半径N=a/W
3.空间直角坐标原点和球坐标原点均取在地球球心
4.极坐标第三参量取角度,认为是球坐标

一.WGS84大地到球坐标

  • 大地转换空间直角坐标(坐标轴原点取地心)

大地坐标表示为:纬度B、经度L、海拔H
空间直角坐标表示方法:X、Y、Z

  • 空间按直角转球坐标

定义径向距离r,天顶角sita ,方位角fai

二.球坐标到大地坐标


Python代码

##1.两个函数一个是大地坐标转换球坐标Geodetic_to_spherical;一个是球坐标转换大地坐标spherical_to_Geodetic。
import math#######################大地转换球坐标####################################
def Geodetic_to_spherical(latitude,longitude,altitude):B=math.radians(latitude);L=math.radians(longitude);H=altitude;f=1/298.257223563;r=6378137;b=r*(1-f);e=math.sqrt(2*f-f*f);N=r/math.sqrt(1-e*e*math.sin(B)*math.sin(B));
#大地坐标转空间直角坐标存放到data数组中data =[(N+H)*math.cos(B)*math.cos(L),(N+H)*math.cos(B)*math.sin(L),(N*(1-e*e)+H)*math.sin(B)];
#直角坐标住那换球坐标存放到data_spherical数组中data_spherical = [math.sqrt(data[0]*data[0]+data[1]*data[1]+data[2]*data[2]),\math.atan(math.sqrt(data[0]*data[0]+data[1]*data[1])/data[2])*180/math.pi,\math.atan(data[1]/data[0])*180/math.pi]; #空间直角坐标xyz转换成球坐标 r sita faireturn data_spherical##########################球转大地#########################################
def spherical_to_Geodetic(r,p,f):f=1/298.257223563;r=6378137;b=r*(1-f);e=math.sqrt(2*f-f*f);e2 = (1/(1-e))-1;
###得到空间直角坐标xyz存到数组data【0~2】中data = [r*math.sin(p)*math.cos(f),r*math.sin(p)*math.sin(f),r*math.cos(p)]ppp = math.atan(data[2]*r/(b*math.sqrt(data[0]*data[0]+data[1]*data[1])))
###存放大地坐标的数组data_Geodetic 【0~2】对应L B Hdata_Geodetic = [0,0,0]
#  大地坐标L=data_Geodetic[0]data_Geodetic[0] = math.atan(data[1]/data[0])
#  大地坐标B=data_Geodetic[1]data_Geodetic[1] = math.atan((data[2]+e2*e2*b*math.sin(ppp)*math.sin(ppp)*math.sin(ppp))/(math.sqrt(data[0]*data[0]+data[1]*data[1])-e*e*r*math.cos(ppp)*math.cos(ppp)*math.cos(ppp)))B=data_Geodetic[1]N = r / math.sqrt(1 - e * e * math.sin(B) * math.sin(B));
#  大地坐标H=data_Geodetic[2]data_Geodetic[2] = (math.sqrt(data[0]*data[0]+data[1]*data[1])/math.cos(B))-Nreturn data_Geodetic#a1存放待转换的大地坐标
a1=[100,101,1500]
a = Geodetic_to_spherical(a1[0],a1[1],a1[2])#b1存放待转换的大地坐标
b1= [6359000, 22, 33]
b = spherical_to_Geodetic(b1[0],b1[1],b1[2])print('输入大地坐标[L,B,H]:',a1,'  输出的球坐标为[r,sita,fai]:',a)
print('\n')
print('输入球坐标[r,sita,fai]:',b1,'  输出的大地坐标[L,B,H]为:',b)

大地坐标转换极坐标(球坐标)相关推荐

  1. c语言经纬度和大地坐标转换,经纬度坐标与大地坐标转换表

    *子午线角度值纬度值b经度值l角度值角度值f2-b2 114114 114114 114114 114114 1 234.565411113.59429634.94836113.9953-0.0047 ...

  2. 广州坐标系转换大地2000_市级2000国家大地坐标转换

    丁庆福 周晓 孙栋 摘 要:2000国家大地坐标系是我国建立使用的第一个地心坐标系,根据原国家测绘地理信息局要求,山东省2018年组织开展了全省国土资源数据转换工作,市一级国土资源数据转换需要工作繁杂 ...

  3. matlab直角坐标转换极坐标,matlab-在MATLAB中怎么将直角坐标转化为极坐标 – 手机爱问...

    Cad中直角坐标和极坐标格式分别是什? CAD中的坐标就是根据数学来使用的.具体说起来有以下几种: 第一,就是常说的笛卡尔坐标,也是最常用的一种,输入格式为(x,y,z),当然在平面问题中就不必输入z ...

  4. c语言大地坐标转换空间坐标,空间直角坐标系与大地坐标系转换程序

    <空间直角坐标系与大地坐标系转换程序>由会员分享,可在线阅读,更多相关<空间直角坐标系与大地坐标系转换程序(4页珍藏版)>请在人人文库网上搜索. 1.空间直角坐标系与大地坐标系 ...

  5. c语言大地坐标转换空间坐标,大地坐标与空间直角坐标转换_C程序

    大地坐标与空间直角坐标转换的C程序 #include #include double HD(double a,double b,double c) {b=b+c/60; a=a+b/60; a=a/1 ...

  6. c语言大地坐标转换空间坐标,大地坐标与直角空间坐标转换计算公式

    一.参心大地坐标与参心空间直角坐标转换 1名词解释: A :参心空间直角坐标系: a) 以参心0为坐标原点: b) Z 轴与参考椭球的短轴(旋转轴)相重合: c) X 轴与起始子午面和赤道的交线重合: ...

  7. 四参数坐标转换c++_GPSRTK坐标转换及四参数、七参数适用条件

    工程测量仪器已由经纬仪.全站仪过渡到GNSS(全球卫星导航系统),特别是公路行业,GPS-RTK作为GNSS的一种应用目前已十分普及.现阶段GPS-RTK以WGS-84 坐标系统为主流,所发布的星历参 ...

  8. 大地测量控制点坐标转换技术规范

    本标准的起草 规则依据GB/T 1.1-2009. 本标准由国家测绘地理信息局提出并归口. 本标准起草单位:中国测绘科学研究院.国家测绘产品质量检验测试中心.广州市城市规划勘测设计研究院. 本标准主要 ...

  9. 直角坐标和求坐标的转换详解-关于球坐标转换为直角坐标正负号相反问题

    最近项目用到直角坐标转换到球坐标,处理后再转回直角坐标作为最后的结果输出,结果发现转回去的直接坐标有的符号是相反的,找到原因记录如下. 1.直角坐标和求坐标的转换详解 其中关于角度反正切的计算可直接用 ...

最新文章

  1. H5新增的标签以及属性
  2. 2021年互联网公司“死亡”名单!(附清单)
  3. 设计模式学习之Factory Method模式和Abstract Factory模式
  4. Sigar - no sigar-amd64-winnt.dll in java.library.path
  5. odata数据绑定_如何使用用于SQL Server集成服务的OData源将数据导入SQL Server数据库
  6. DotNet Framework 小技巧
  7. 如何用思维导图快速理解PMBOK-PMP第六版教材
  8. 6、python基础:文件输入输出详解
  9. DNS数据配置文件SOA和NS
  10. element-ui 删除input框尾部默认图标和获取焦点边框高亮问题
  11. 身份证男女识别---非线性问题01
  12. 业界 | 阿里获杭州首张无人驾驶路测牌照,打造“智能高速公路”
  13. 【NOIP2015】洛谷2668 斗地主
  14. Jenkins 打包项目出错汇总(持续)
  15. bootloader学习笔记---第一篇以stm32为例
  16. 网页版 连连看 html5实现
  17. perl q qq qr qw qx 区别与使用方法
  18. 展厅设计全面优化企业形象,取得客户的信任为合作打下良好的基础
  19. soc 设计soc设计 uml实务手册_企业内训“软件需求设计建模方法学全程实例剖析”训练方案(2020年)...
  20. 自动关闭Office2010 OSPPSVC.EXE

热门文章

  1. python中with open as f什么意思_Python中 with open(file_abs,'r') as f: 的用法以及意义
  2. 单元测试怎么就成了银弹?
  3. github、npm、Stack Overflow...... 一键加速 【支持多平台】
  4. 码力十足学量化|macd 指标详解
  5. 2014【史上最全】的中国各行业竞争格局
  6. 旅行商问题与蚁群算法
  7. 蚁群算法c语言实现加注释,蚁群算法代码实现
  8. 前缀编码是什么?哈夫曼编码是什么?
  9. 1字符集 iso latin_附件一、ISO Latin-1字符集
  10. 一张图看懂光圈、快门、感光度的意义