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

地心地固坐标系的原点在地心,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中的北天东坐标系。

对应的旋转矩阵为

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

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

化简得:

相关推荐
电子_咸鱼4 小时前
LeetCode——Hot 100【电话号码的字母组合】
数据结构·算法·leetcode·链表·职场和发展·贪心算法·深度优先
仰泳的熊猫4 小时前
LeetCode:785. 判断二分图
数据结构·c++·算法·leetcode
rit84324994 小时前
基于MATLAB实现基于距离的离群点检测算法
人工智能·算法·matlab
my rainy days6 小时前
C++:友元
开发语言·c++·算法
haoly19896 小时前
数据结构和算法篇-归并排序的两个视角-迭代和递归
数据结构·算法·归并排序
微笑尅乐6 小时前
中点为根——力扣108.讲有序数组转换为二叉搜索树
算法·leetcode·职场和发展
im_AMBER7 小时前
算法笔记 05
笔记·算法·哈希算法
夏鹏今天学习了吗7 小时前
【LeetCode热题100(46/100)】从前序与中序遍历序列构造二叉树
算法·leetcode·职场和发展
吃着火锅x唱着歌7 小时前
LeetCode 2389.和有限的最长子序列
算法·leetcode·职场和发展
嶔某7 小时前
二叉树的前中后序遍历(迭代)
算法