同椭球下空间直角坐标转换为大地坐标
发布时间:2020-12-17 17:04:47 所属栏目:Python 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 import mathwgs84={"a":6378137,"b":6356752.3142,}def num2blh(num): ''' 23.434=23: ''' dd=int(num) mm=int((num-dd)*60) ss=(num*60-int(num*60))
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 import math wgs84={"a":6378137,"b":6356752.3142,} def num2blh(num): ''' 23.434=>23: ''' dd=int(num) mm=int((num-dd)*60) ss=(num*60-int(num*60))*60 return ":".join([str(x) for x in (dd,mm,ss)]) def XYZ2BLH(x,y,z,epi): ''' x,z:分别对应空间直角坐标系坐标 epi:椭球长短轴 ''' x,z=float(x),float(y),float(z) a,b=epi["a"],epi["b"] e=math.sqrt(a**2-b**2)/a ep=math.sqrt(a**2-b**2)/b L=math.atan(y/x)*180/math.pi+180 r=math.sqrt(x**2+y**2) R=math.sqrt(r**2+z**2) u=math.atan(b*z*(1+ep**2*b/R)/(a*r)) B=math.atan((z+ep**2*b*math.sin(u)**3)/(r-e**2*a*math.cos(u)**3)) BB=B*180/math.pi H=r*math.cos(B)+z*math.sin(B)-a*math.sqrt(1-e**2*math.sin(B)**2) return (BB,L,H) 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- 使用lxml tostring()获取原始字符串
- 如何使用python 2.7移动Windows桌面图标?
- 编程语言的分类及初识大蟒蛇
- 使用dictwriter覆盖相同csv文件中的行
- PYTHON:使用python变量更新MULTIPLE COLUMNS
- python – 在matplotlib中使用RGB颜色的单元格显
- django – DRF – 序列化对象中的OrderedDict
- python – 跟踪网站链接的重复过程(BeautifulSou
- python安装PIL模块时Unable to find vcvarsall.b
- 【Android】超详细appnium android-sdk-windoes
热点阅读