Finding a distance between two cities with matlab codes
4 次查看(过去 30 天)
显示 更早的评论
I have a lattitude and longitude information of two cities, and i want to find the distance between them, how can i do it with matlab? i made with pdist command which computes the euclidean distance, but after i noticed that it would be wrong because of the shape of the world.
0 个评论
采纳的回答
Andrei Bobrov
2012-8-6
编辑:Andrei Bobrov
2012-8-6
use Mapping Toolbox
eg:
citys1 - lattitude and longitude in degrees of Saint-Petersburg;
citys2 - lattitude and longitude in degrees of Vladivostok;
citys1 = [59.946071,30.363464];
citys2 = [43.126045,131.904602];
a = distance(citys1,citys2);
out = deg2km(a);
without Mapping Toolbox
R = 6371; % km - radius of the Earth;
A = abs(citys1(2)-citys2(2));
c = 90-citys1(1);
b = 90-citys2(1);
a2 = acos(cosd(b)*cosd(c) + sind(b)*sind(c)*cosd(A));
out2 = R*a2;
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Statistics and Machine Learning Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!