python坐标系转换函数_python WGS84和ECEF坐标的转换
地心地固坐标系(Earth-Centered, Earth-Fixed,ECEF),简称地心坐标系。
地理坐标系统(Geographic Coordinate System,GCS)1,坐标系是地心坐标系,用经纬度表示球面上的点。
世界大地测量系统(World Geodetic System, WGS),比如WGS84,是一种地理坐标系统,用于全球定位系统(GPS)。
投影坐标系统(Projection Coordinate System,PCS)2,,在二维平面上用米表示位置。
通用横轴墨卡托投影(Universal Transverse Mercator,UTM),是一种投影方法。
pip install Pypro
Cesium中常用的坐标系主要有两种:WGS84坐标系和笛卡尔空间直角坐标系。平时我们常见的某个点的经纬度就是在WGS84坐标系下某个点的坐标,它的坐标原点在椭球的质心;而笛卡尔坐标系主要是用来做空间位置的变化如平移、旋转和缩放等等,它的坐标原点在椭球的中心。
库安装
、 pip install pyproj
转换公式
https://en.wikipedia.org/wiki/Geographic_coordinate_conversion#From_geodetic_to_ECEF_coordinates
#坐标系转换
import pyproj
def ecef2lla(x,y,z):
'''
x = 652954.1006
y = 4774619.7919
z = -4167647.7937
'''
#ecef转化为经纬高
ecef = pyproj.Proj(proj='geocent', ellps='WGS84', datum='WGS84')
lla = pyproj.Proj(proj='latlong', ellps='WGS84', datum='WGS84')
lon, lat, alt = pyproj.transform(ecef, lla, x, y, z, radians=False)#radians否用弧度返回值
print ('纬度:',lat)
print ('经度:',lon)
print ('高度:',alt)
return lat,lon,alt
https://www.cnblogs.com/langzou/p/11388520.html
GNSS计算主要涉及三个坐标系,地心地固坐标系,地理坐标系和站心坐标系。这里主要介绍一下三个坐标的含义和转换公式。
地心地固坐标系如图X,Y,Z表示 (ECEF坐标系),以地心O为坐标原点,Z轴指向协议地球北极,X轴指向参考子午面与地球赤道的交点,也叫地球坐标系。一般GNSS坐标计算都在地心地固坐标系下进行的。由于地球是椭圆形,有WGS-84和CGC2000等多种标准
地理坐标系则通过经度(longitude),纬度(latitude)和高度(altitude)来表示地球的位置,也叫经纬高坐标系(LLA坐标系)。
站心坐标系以用户所在位置P为坐标原点,三个轴分别指向东向,北向和天向,也叫东北天坐标系(enu坐标系)。站心坐标系的天向方向和地理坐标系的高度方向是一致的。站心坐标系用在惯性导航和卫星俯仰角计算中较多。
网页转换代码
view-source:http://www.ab126.com/Geography/4031.html
function do_llhxyz()
{
var ecef = new Array(3);
var latitude,longitude,height;
var x,y,z;
var sans;
var dtr = Math.PI/180;
CallCount = CallCount + 1;
latitude = document.io_form.Latitude.value;
longitude= document.io_form.Longitude.value;
height = document.io_form.Height.value;
latitude = Number(latitude);
longitude= Number(longitude);
height = Number(height);
hkm = 0.001 * height
good = goodnum(latitude) && goodnum(longitude) && goodnum(hkm);
if ( !good ) sans = sans+"\n无效的数字输入 \n"
if ( good )
{
sans = " \n";
ecef = llhxyz(latitude,longitude,hkm);
x = ecef[0];
y = ecef[1];
z = ecef[2];
x = fformat(x,3);
y = fformat(y,3);
z = fformat(z,3);
sans = sans +"ECEF从纬度、经度、高度 (椭球)\n";
sans = sans + "\n"
sans = sans +"X : " + x + " km\n";
sans = sans +"Y : " + y + " km\n";
sans = sans +"Z : " + z + " km\n";
document.io_form.text_area.value = sans;
return false;
}
document.io_form.text_area.value = sans;
return false;
}
function do_xyzllh()
{
var ecef = new Array(3);
var llh = new Array(3)
var latitude,longitude,height;
var x,y,z;
var sans;
var dtr = Math.PI/180;
CallCount = CallCount + 1;
x = document.io_form.X.value;
y = document.io_form.Y.value;
z = document.io_form.Z.value;
// 返回字符串变量
// 可能或不使用自动转换的数学
x = Number(x);
y = Number(y);
z = Number(z);
good = goodnum(x) && goodnum(y) && goodnum(z);
if ( !good ) sans = sans+"\n无效的数字输入 \n"
if ( good )
{
sans = " \n";
ecef[0] = x;
ecef[1] = y
ecef[2] = z;
llh = xyzllh(ecef);
latitude = llh[0];
longitude= llh[1];
hkm = llh[2];
height = 1000.0 * hkm;
latitude = fformat(latitude,5);
longitude= fformat(longitude,5);
height = fformat(height,1);
sans = sans +"纬度、经度、高度 (椭球)从 ECEF\n";
sans = sans + "\n"
sans = sans +"纬度 : " + latitude + " 度 N\n";
sans = sans +"经度 : " + longitude + " 度 E\n";
sans = sans +"高度 : " + height + " m\n";
}
document.io_form.text_area.value = sans;
return false;
}
python坐标系转换函数_python WGS84和ECEF坐标的转换相关推荐
- ecef转换经纬度坐标 c语言代码,WGS84和ECEF坐标的转换
#include "stdafx.h" #include #define PI 3.141592653 /* 该程序根据GPS.G1-X-00006.pdf文档,实现了WGS8 ...
- WGS84和ECEF坐标的转换
ref:https://blog.51cto.com/fengyuzaitu/1892212 #include "stdafx.h"#include <math.h># ...
- python内置函数bin,Python内置函数bin() oct()等实现进制转换
Python内置函数bin() oct()等实现进制转换 使用Python内置函数:bin().oct().int().hex()可实现进制转换. 先看Python官方文档中对这几个内置函数的描述: ...
- python数字类型转换函数_Python的数据类型转换函数
玩蛇网这篇文章给大家介绍关于,Python数据类型的转换函数. Python提供了一些可以把某个值从一种数据类型,转换成为另一种数据类型的内置函数和方法.int函数可以将任何可以转换为整型的值转换为整 ...
- python反序数函数_python逆序函数
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! python sorted()函数 list内置一个方法sort(),可以实现对 ...
- python中len 函数_python len
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 在python中除了print函数之外,len函数和type函数应该算是使用最频 ...
- python字典zip函数_Python zip函数及用法
zip() 函数是 Python 内嵌函数之一,它能够将好几个序列(列表.元组.字典.结合.字符串数组及其 range() 区段组成的列表)"缩小"成一个 zip 目标.说白了&q ...
- python中延时函数_python延时函数
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 可以使用python的time模块来实现类似于c中的sleep函数作用代码如下: ...
- python有哪些函数_python常用函数有哪些
Python常用函数: 1. print()函数:打印字符串 2. raw_input()函数:从用户键盘捕获字符 3. len()函数:计算字符长度 4. format(12.3654,'6.2f' ...
最新文章
- 笔记-JavaWeb学习之旅2
- rowspan和colspan用法详解
- mac用vscode打开html,Mac 命令行打开VsCode
- sha256校验工具_使用AIDE工具做入侵检测
- Kubernetes的共享GPU集群调度 1
- Ubuntu解除端口占用
- Ansible管理命令
- java list 赋值jsp,在Struts中使用JavaBean和List(多行数据)类型属性-JSP教程,Java技巧及代码...
- atitit.词法分析原理 词法分析器 (Lexer)
- [2018.11.05 T2] 买牛奶
- php 工资 2018,2018年PHP程序员的进阶之路
- 集成海康威视Sadp SDK实现设置设备参数配置
- 服务器多IP有什么用?服务器多IP配置方法分享
- CAN总线网络知识(一)
- Java基础321 - 如何重写equals方法
- UEFI之PEI阶段
- 深度学习训练经验之迭代次数与准确率之惑
- SQL查询某个时间段购买过商品的所有用户
- Linux---/proc目录全讲解
- 《操作系统真象还原》第五章 ---- 轻取物理内存容量 启用分页畅游虚拟空间 力斧直斩内核先劈一角 闲庭信步摸谈特权级
热门文章
- 大型专利公司岗位设计,工作内容及其人才要求标准
- 远程桌面连接时,用电脑名不能连接,用IP就可以,为什么
- 程旭/王蒙岑/袁梦婷/李建刚/熊武客座主编Frontiers根际微生物组专刊征稿(IF6)
- 全球与中国远程家庭监控系统市场深度研究分析报告
- 联想电脑什么桌面录屏软件好用?
- 台式计算机卡拉ok点歌系统,台式机改造歌厅点歌系统几款实用范例
- html 表格中图片显示不全,为何Word 向表格里插入图片时显示不全呢? 有图!
- 2021年中国工业品电商行业发展回顾及大型国有工业品电商平台助力民企转型发展的作用分析[图]
- 万字带图教程带你从零开始安装CentOS
- 【T3】备份账套提示“下标越界”