知道两地的经纬度能算出距离吗?怎样算
问题描述:
知道两地的经纬度能算出距离吗?怎样算
如果知道两地经纬度能算出距离吗?
例如甲地是东经116°22′17北纬39°26′35〃,
乙地是东经113°15′36〃北纬37°51′27〃两地距离是多少?
答
因为地球是椭球体,所以计算出准确的距离需要更复杂的公式.如果假设地球是球体就容易的多了,
设地球上某点的经度为lambda,纬度为phi,
则这点的空间坐标是
x=cos(phi)*cos(lambda)
y=cos(phi)*sin(lambda)
z=sin(phi)
设地球上两点的空间坐标分别为(x1,y1,z1),(x2,y2,z2)
则它们的夹角为
A=acos(x1*x2+y1*y2+z1*z2),A是角度
则两地距离为
A/180*pi*R,其中R为地球平均半径6371
误差不超过1%