求经纬度坐标计算公式?

如题所述

你提的问题有以下问题:
1、搞测量的人员看不懂你的问题,不知道你想要什么
2、不搞测量的人员,看了也没有用
======如果你是想要
1、经纬度坐标与投影坐标的转换算法
2、地心坐标系与经纬度坐标的转换算法
3、不同橱球之间经纬度的转换算法
---------以上3种算法,要说清楚还是比复杂的,那么你想要的究竟是什么呢?你是要编写程序吗?
温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-08-16
算起来还挺复杂的
地球的经纬度坐标是球坐标(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得到的θ必须用弧度
相似回答