009地球系到地理系

e系g系更形象的理解方式。如图所示:

这里写图片描述

图中, λ \lambda λ表示经度, φ \varphi φ表示纬度。
e系 z e z_e ze轴正向旋转 λ \lambda λ,那么此时 x e x_e xe轴就在本初子午面上,过本初子午线与赤道线的交点。此时 x e x_e xe轴的指向为的天方向
观察g系 x g x_g xg轴的指向,其指向东方向。此时 x e x_e xe x g x_g xg还相差 9 0 ∘ 90^\circ 90,所以还要再旋转 9 0 ∘ 90^\circ 90。即e系 z e z_e ze轴正向旋转 λ + 9 0 ∘ \lambda+90^\circ λ+90便能使 x e x_e xe x g x_g xg同向。

之后便需要绕 x e x_e xe轴旋转,如果让 z e z_e ze z g z_g zg同向,便实现了两个坐标系的旋转变换。
z g z_g zg与赤道平面的夹角为 φ \varphi φ,那么与 z e z_e ze的夹角为 9 0 ∘ − φ 90^\circ-\varphi 90φ,因此绕 x e x_e xe轴旋转 9 0 ∘ − φ 90^\circ-\varphi 90φ即可。
这样便实现了从e系g系的转换。

z e z_e ze轴旋转 λ + 90 \lambda + 90 λ+90
[ c o s ( λ + 9 0 ∘ ) s i n ( λ + 9 0 ∘ ) 0 − s i n ( λ + 9 0 ∘ ) c o s ( λ + 9 0 ∘ ) 0 0 0 1 ] = [ − s i n λ c o s λ 0 − c o s λ − s i n λ 0 0 0 1 ] \begin{bmatrix} cos(\lambda+90^\circ) & sin(\lambda+90^\circ) & 0\\ -sin(\lambda+90^\circ) & cos(\lambda+90^\circ) & 0\\ 0 & 0 & 1\\ \end{bmatrix} = \begin{bmatrix} -sin\lambda & cos\lambda & 0\\ -cos\lambda & -sin\lambda & 0\\ 0 & 0 & 1\\ \end{bmatrix} cos(λ+90)sin(λ+90)0sin(λ+90)cos(λ+90)0001=sinλcosλ0cosλsinλ0001

x e x_e xe轴旋转 90 − φ 90-\varphi 90φ
[ 1 0 0 0 c o s ( 9 0 ∘ − φ ) s i n ( 9 0 ∘ − φ ) 0 − s i n ( 9 0 ∘ − φ ) c o s ( 9 0 ∘ − φ ) ] = [ 1 0 0 0 s i n φ c o s φ 0 − c o s φ s i n φ ] \begin{bmatrix} 1 & 0 & 0\\ 0 & cos(90^\circ - \varphi) & sin(90^\circ - \varphi)\\ 0 & -sin(90^\circ - \varphi) & cos(90^\circ - \varphi)\\ \end{bmatrix} = \begin{bmatrix} 1 & 0 & 0\\ 0 & sin\varphi & cos\varphi\\ 0 & -cos\varphi & sin\varphi \end{bmatrix} 1000cos(90φ)sin(90φ)0sin(90φ)cos(90φ)=1000sinφcosφ0cosφsinφ

可得:
C e g = [ 1 0 0 0 s i n φ c o s φ 0 − c o s φ s i n φ ] [ − s i n λ c o s λ 0 − c o s λ − s i n λ 0 0 0 1 ] = [ − s i n λ c o s λ 0 − s i n φ c o s λ − s i n φ s i n λ c o s φ c o s φ c o s λ c o s φ s i n λ s i n φ ] C_e^g = \begin{bmatrix} 1 & 0 & 0\\ 0 & sin\varphi & cos\varphi\\ 0 & -cos\varphi & sin\varphi \end{bmatrix} \begin{bmatrix} -sin\lambda & cos\lambda & 0\\ -cos\lambda & -sin\lambda & 0\\ 0 & 0 & 1\\ \end{bmatrix} = \begin{bmatrix} -sin\lambda & cos\lambda & 0 \\ -sin\varphi cos\lambda & -sin\varphi sin\lambda & cos\varphi \\ cos\varphi cos\lambda & cos\varphi sin\lambda & sin\varphi \end{bmatrix} Ceg=1000sinφcosφ0cosφsinφsinλcosλ0cosλsinλ0001=sinλsinφcosλcosφcosλcosλsinφsinλcosφsinλ0cosφsinφ
C g e = [ − s i n λ − s i n φ c o s λ c o s φ c o s λ c o s λ − s i n φ s i n λ c o s φ s i n λ 0 c o s φ s i n φ ] C_g^e = \begin{bmatrix} -sin\lambda & -sin\varphi cos\lambda & cos\varphi cos\lambda\\ cos\lambda & -sin\varphi sin\lambda & cos\varphi sin\lambda\\ 0 & cos\varphi & sin\varphi \end{bmatrix} Cge=sinλcosλ0sinφcosλsinφsinλcosφcosφcosλcosφsinλsinφ

### 地球坐标到地理坐标转换矩阵 在地理信息统 (GIS) 制图学中,地球坐标(通常指笛卡尔直角坐标)与地理坐标之间的转换是一个重要的操作。这种转换涉及到从三维空间中的位置描述转变为经纬度表示。 对于地球坐标 $(X, Y, Z)$ 到地理坐标 $(\lambda, \phi, h)$ 的变换,其中 $\lambda$ 是经度,$\phi$ 是纬度,而 $h$ 表示椭球面高度,可以采用如下公式: $$ λ = atan2(Y,X)[^1] $$ $$ φ = arctan(\frac{Z}{\sqrt{X^{2}+Y^{2}}}) $$ 然而,在实际应用中,为了简化计算过程并提高精度,常常会利用旋转平移组成的齐次变换矩阵来进行此转换。具体来说,该转换可以通过一列旋转变换来实现,这些变换将原始坐标轴逐步调整至目标坐标统的方向上。 假设存在一个已知参数集定义了两个坐标统间的关,则可通过构建相应的旋转矩阵来完成这一任务。例如,当考虑地心大地坐标向地方平面坐标投影时,可能涉及到了三个角度——绕 X 轴、Y 轴以及 Z 轴的旋转[^2]。 下面给出了一种基于罗德里格斯公式(Rodrigues' rotation formula)的方法用于创建这样的旋转矩阵 R: ```python import numpy as np def rodrigues_rotation_matrix(k, theta): """ 计算给定单位矢量 k 及其对应的旋转角度 θ 下的空间旋转矩阵. 参数: k : array_like 单位长度的方向矢量 [kx ky kz]. theta : float 绕着 k 方向逆时针测量的角度(弧度). 返回: ndarray 形状为 (3, 3) 的正交旋转矩阵. """ K = np.array([[0, -k[2], k[1]], [k[2], 0, -k[0]], [-k[1], k[0], 0]]) I = np.eye(3) return I + np.sin(theta)*K + (1-np.cos(theta))*np.dot(K,K) # 定义旋转轴角度 axis_x = np.array([1., 0., 0.]) angle_x = ... # 需要根据实际情况设定具体的数值 R_x = rodrigues_rotation_matrix(axis_x, angle_x) ``` 需要注意的是上述代码片段仅展示了如何围绕单个轴线执行一次特定角度的旋转;完整的坐标转换还需要综合考虑其他必要的平移分量以及其他维度上的旋转效果,并最终形成统一的整体变换矩阵应用于待处理的数据点集合之上。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值