全国省会城市经纬度.doc
文本预览下载声明
全国省会城市经纬度
2010-04-25 18:19
北京E116°28N39°54上海E121°29N31°14天津E117°11N39°09重庆E106°32N29°32哈尔滨E126°41N45°45长春E125°19N43°52沈阳E123°24N41°50呼和浩特E111°48N40°49石家庄E114°28N38°02太原E112°34N37°52济南E117°N36°38郑州E113°42N34°48西安E108°54N34°16兰州E103°49N36°03银川E106°16N38°20西宁E101°45N36°38乌鲁木齐E87°36N43°48合肥E117°18N31°51南京E118°50N32°02杭州E120°09N30°14长沙E113°N28°11南昌E115°52N28°41武汉E114°21N30°37成都E104°05N30°39贵阳E106°42N26°35福州E119°18N26°05台北E121°31N25°03广州E113°15N23°08海口E110°20N20°02南宁E108°20N22°48昆明E102°41N25°拉萨E90°08 N29°39香港E114°10N22°18澳门E113°35N22°14台北E121°31N25°03把地球当作一个正常的球体(其实它是椭球)来说,球面两点之间的距离计算并不复杂,运用球坐标很容易就能计算出两点之间的弧长。当然这都是高中的知识,我 和你一样,也没有那个耐心来将其推导,所以我就利用google map的经纬度到距离计算的js脚本,将球面弧长的公式给还原出来(估计这个公式是经过部分修正的),还原出来的公式如下:公式解释如下:
公式中经纬度均用弧度表示,角度到弧度的转化应该是很简单的了吧,若不会,依然请参考这个 HYPERLINK /wp-content/uploads/2008/09/latlung_dis.html \t _blank 这个经纬度算距离的工具;
Lat1 Lung1 表示A点经纬度,Lat2 Lung2 表示B点经纬度;
a=Lat1 – Lat2 为两点纬度之差 b=Lung1 -Lung2 为两点经度之差;
6378.137为地球半径,单位为公里;
matlab代码:
adress={北京;上海;天津;重庆;哈尔滨;长春;沈阳;呼和浩特;石家庄;太原;济南;郑州;西安;兰州;银川;西宁;乌鲁木齐;合肥;南京;杭州;长沙;南昌;武汉;成都;贵阳;福州;台北;广州;海口;南宁;昆明;拉萨;香港;香港;澳门;台北};%经纬度,第一列是东经E,第二列是北纬NEN=[116.28,39.54;121.29,31.14;117.11,39.09;106.32,29.32;126.41,45.45;125.19,43.52;123.24,41.5;111.48,40.49;114.28,38.02;112.34,37.52;117,36.38;113.42,34.48;108.54,34.16;103.49,36.03;106.16,38.2;101.45,36.38;87.36,43.48;117.18,31.51;118.5,32.02;120.09,30.14;113,28.11;115.52,28.41;114.21,30.37;104.05,30.39;106.42,26.35;119.18,26.05;121.31,25.03;113.15,23.08;110.2,20.02;108.2,22.48;102.41,25;90.08,29.39;114.1,22.18;114.1,22.18;113.35,22.14;121.31,25.03];%计算任意两点间的直线距离ENNew(:,1)=(floor(EN(:,1))+(EN(:,1)-floor(EN(:,1)))/60)*pi/180;ENNew(:,2)=(floor(EN(:,2))+(EN(:,2)-floor(EN(:,2)))/60)*pi/180;%计算任意
显示全部