省会城市经纬度计算
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
省会城市经纬度计算
2010-04-25 18:19
北京E116°28' N39°54' 上海E121°29' N31°14' 天津E117°11' N39°09' 重庆E106°32' N29°32' 哈尔滨E126°41' N45°45' 长春E125°19' N43°52' 沈阳E123°24' N41°50' 呼和浩特E111°48' N40°49' 石家庄E114°28' N38°02' 太原E112°34' N37°52' 济南E117°N36°38' 郑州E113°42' N34°48' 西安E108°54' N34°16' 兰州E103°49' N36°03' 银川E106°16' N38°20' 西宁E101°45' N36°38' 乌鲁木齐E87°36' N43°48' 合肥E117°18' N31°51' 南京E118°50' N32°02' 杭州E120°09' N30°14' 长沙E113°N28°11' 南昌E115°52' N28°41' 武汉E114°21' N30°37' 成都E104°05' N30°39' 贵阳E106°42' N26°35' 福州E119°18' N26°05' 台北E121°31' N25°03' 广州E113°15' N23°08' 海口E110°20' N20°02' 南宁E108°20' N22°48' 昆明E102°41' N25°
拉萨E90°08' N29°39' 香港E114°10' N22°18' 香港E114°10' N22°18' 澳门E113°35' N22°14' 台北E121°31' N25°03'
matlab代码:(台北,香港重复)
adress={'北京';
'上海';
'天津';
'重庆';
'哈尔滨';
'长春';
'沈阳';
'呼和浩特';
'石家庄';
'太原';
'济南';
'郑州';
'西安';
'兰州';
'银川';
'西宁';
'乌鲁木齐';
'合肥';
'南京';
'杭州';
'长沙';
'南昌';
'武汉';
'成都';
'贵阳';
'福州';
'广州';
'海口';
'南宁';
'昆明';
'拉萨';
'香港';
'澳门';
'台北'};
%经纬度,第一列是东经E,第二列是北纬N EN=[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;
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;
%计算任意两点的距离,使用公式
$2*6378.137*\arcsin\sqrt{sin^2(a)+cos(Lat2)*cos(Lat2)*sin^2(b/2)}$
%Lat1 Lung1 表示A点经纬度,Lat2 Lung2 表示B点经纬度;
%a=Lat1 –Lat2 为两点纬度之差b=Lung1 -Lung2 为两点经度之差;
%Lat1 Lung1 表示A点经纬度,Lat2 Lung2 表示B点经纬度;
SizeEN=size(EN,1);
Dis=zeros(SizeEN,SizeEN);
for i=1:SizeEN
for j=1:SizeEN
WeiDuCha=ENNew(i,2)-ENNew(j,2);
JingDuCha=EN(i,1)-EN(j,1);
Dis(i,j)=
2*6378.137*asin(sqrt(sin(WeiDuCha/2)^2+sin(JingDuCha/2)^2*cos(ENNew(i,2))*cos(ENNew(j, 2))));
end
end