一、
子午线周长(公里) 40008.548 赤道周长(公里) 40075.704纬度
40008.548 / 360(度) = 111.135 公里/度40008.548 / (360*60)(分) = 1.85 公里/分40008.548 / (360*60*60)(秒) = 30.87 米/秒经度
首先算相应经度位置的纬度圈长度=40075.704 * cos(经度)然后方法相同,除度数就成于是,比如北京40度40075.704 * cos(40) = 30699.7740075.704 * cos(40) / 360(度) = 85.277 公里/度40075.704 * cos(40) / 360*60)(分) = 1.42 公里/分40075.704 * cos(40) / 360*60*60)(秒) = 23.688 米/秒附:
cos(a) = sin(90-a)二、计算两个点之间的距离 知道两个点的经度和纬度这个我用c#写了一个函数 public static double GetDistance( double ox, double oy, double dx, double dy) { double wd1 = ox; double wd2 = dx; double jd1 = oy; double jd2 = dy; double R = 6.371229 * 1000000.0; double x,y,outdis; x = (jd2 - jd1) * Math.PI * R * Math.Cos(((wd1 + wd2) / 2) * Math.PI / 180) / 180; y = (wd2 - wd1) * Math.PI * R / 180; outdis = Math.Sqrt(x * x + y * y); return outdis / 1000; }
ox,oy是起始点的经纬度,dx,dy是终点的经纬度 输出是公里数
这里我们都把地球作为理想状态的,而且还是近似计算自己做个记录。