地心地固坐标系与北天东坐标系的转换

地心地固坐标系的原点在地心,Z轴指向北极点,X轴指向本初子午线与赤道的交点,Y轴指向符合右手定则,如下图所示。
图1 地心地固坐标系

北天东坐标系的原点在任选的一点,X轴指向北,Y轴指向天,Z轴指向东,如下图所示。
图2 北天东坐标系

下面实现地心地固坐标系到北天东坐标系的转换,问题描述为:设一点在地心地固坐标系下的坐标是,设北天东坐标系的原点点在地心地固坐标系下的坐标是点的经度和纬度分别是。求在北天东坐标系下的坐标


要实现坐标系转换,其实就是平移和旋转

**第一步,**进行平移,令,相当于得到点在图3坐标系下的坐标。
图3

**第二步,**将图3的坐标系旋转成图2的样子。这里需要多次旋转,每次以某个轴为对称轴进行旋转,对应的坐标变换参考这篇文章。这里共需要3次旋转。

**(1)**以y1轴为对称轴,顺时针旋转90°,得到图4的样子。
图4

这里绕y1轴顺时针旋转90°,相当于逆时针旋转-90°,因此得到旋转矩阵:

点在图4坐标系下的坐标是,则

(2) 以x2轴为对称轴,顺时针旋转,得到图5的样子。经过这一步旋转,x3轴和y3轴就处在过O3点的经度线所在的平面了,而且z3轴指向了东。
图5

对应的旋转矩阵为

点在图5坐标系下的坐标是,则

(3) 以z3轴为对称轴,顺时针旋转。经过这一步,把x3轴拧向了北,y3轴拧向了天,于是得到图2中的北天东坐标系。

对应的旋转矩阵为

因此,点在北天东坐标下的坐标为

综上,变换到的公式可以写成:

化简得:

相关推荐
05Kevin3 小时前
lk每日冒险题--数据结构6.27
算法
To_OC13 小时前
从一次栈溢出报错说起,我把递归彻底扒明白了
javascript·算法·程序员
千纸鹤安安18 小时前
千问Qwen-AgentWorld来了:一个语言模型搞定七大Agent场景,GPT-5.4都输了
算法
七牛开发者21 小时前
MCP 到底是什么?为什么 Agent 都想接上它
算法·aigc·agent
kisshyshy1 天前
从递归到迭代,一文吃透二叉树的核心知识与 JavaScript 实现
javascript·算法·代码规范
To_OC2 天前
LC 49 字母异位词分组:想到哈希表很简单,选对 key 才是精髓
javascript·算法·leetcode
用户938515635072 天前
从 O(n²) 到 O(nlogn):一文读懂快速排序的“快”与“妙”
javascript·算法