how to calculate the distance of a lat lon to the coastline?
7 views (last 30 days)
Show older comments
hello, I want to find the distance from the lat lat station to the coastline. following my script, but there was an error that I did not understand, I thank anyone who provided advice and helped me.
lonlat = load ('lonlat.mat');%get lonlat allstasiun
coast = load('coast.dat');
% % Preallocate
coast_indexes = size(lonlat);
distancefromcoast = size(lonlat);
% % Find distance and corresponding coastal point
for i=1:1:numel(lonlat)
[dist, az] = distance(lonlat(i), lonlat(i), coast.lat, coast.long);
[distancefromcoast(i),coast_indexes(i)] = min(dist);
end
3 Comments
Melih Can
on 9 Sep 2020
Should be 'coast.mat' also distance('lonlat(i),lonlat(i)'... does'nt look appropriate
Answers (1)
David Hill
on 11 Jan 2020
Technically, you should use spherical trigonometry (great circle path) to determine the shortest distance. The algorithm is not difficult. You could solve my Cody problem: https://www.mathworks.com/matlabcentral/cody/problems/45180
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!