将经纬度投影到xyz球体平面上

若以地球为例,假设地球是真空中的球形鸡。以赤道面作为xy平面,其中赤道面与本初子午线的交点设为x正半轴的方向。

y的正方向为从北方观察x轴顺时针旋转90°

z为指向北极点的方向。

记纬度为α,记北方纬度为正方向

记经度为β,x正向y正旋转为正方向

 

建系如图。

将经纬度投影到xyz球体平面上_第1张图片

 

 

那么,z = sinα*R R为地球半径,下同

将经纬度投影到xyz球体平面上_第2张图片

 

由上图可知,球体上任意一点在xy平面上的投影长度Θ = cosα*R(记为粉色线段),此时已经和z无关,直接将xy平面画出来

将经纬度投影到xyz球体平面上_第3张图片

黄线长度为y = cosα*R*sinβ

紫线长度为x = cosα*R*cosβ

 

 

综上所述

x = cosα*R*cosβ

y = cosα*R*sinβ

z = sinα*R

 

如果说β角的转向方向相反的话,把x和y中的cosβ换成sinβ ,sinβ换成cosβ就可以

老杨你说我对你好不,专门给你做个这

 

 

 

 

 

你可能感兴趣的:(算法)