请教 已知两个点的经纬度 怎么计算相应的方位角及距离(知道两个点的经纬度怎么求坐向)

请教 已知两个点的经纬度 怎么计算相应的方位角及距离(知道两个点的经纬度怎么求坐向)

首页维修大全综合更新时间:2025-06-29 15:35:38

请教 已知两个点的经纬度 怎么计算相应的方位角及距离

  算起来还挺复杂的

地球的经纬度坐标是球坐标(x,y),x是经度,y是纬度

先把它转换成直角坐标(X,Y,Z)

设地球半径为r

则有转换式:

X=r*cos(y)*cos(x)

Y=r*cos(y)*sin(x)

Z=r*sin(y)

分别得到A(x1,y1),B(x2,y2)两点的直角坐标A(X1,Y1,Z1),B(X2,Y2,Z2)

那么AB两点间直线距离是L=√[(X2-X1)^2+(Y2-Y1)^2+(Z2-Z1)^2]

把上面转换式代入化简可以得到L=r*√[2-2cos(y1)*cos(y2)*cos(x1-x2)-2sin(y1)*sin(y2)]

设AB两点对球心所夹圆心角为θ(弧度),则有L=2r*sin(θ/2)=2r*√[(1-cosθ)/2]=r*√[2*(1-cosθ)]

因此cosθ=1-L^2/(2r^2)=cos(y1)*cos(y2)*cos(x1-x2)+sin(y1)*sin(y2)

那么弧长=r*θ

=r*arccos[cos(y1)*cos(y2)*cos(x1-x2)+sin(y1)*sin(y2)]

这里的经纬度用角度弧度均可,因为都要代入三角函数,但arccos得到的θ必须用弧度

大家还看了
也许喜欢
更多栏目

© 2021 3dmxku.com,All Rights Reserved.