dividing coastline into equal interval
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hello, I needed to divide the coastline into equal interval (as shown in the image) and identify latitude and longitude of each segments of these coastline.
Basically, for each of these segment, I wish to count the frequency of storms hitting/year.
For this, I did the following:
coastlines = load('C:\Program Files\MATLAB\R2024a\toolbox\map\mapdata\coastlines.mat');
LatLimit = [15 44]; LonLimit = [60 104];
X = coastlines.coastlat((coastlines.coastlat >= LatLimit(1,1) & coastlines.coastlat <= LatLimit(1,2)),:);
Y = coastlines.coastlon((coastlines.coastlon >= LonLimit(1,1) & coastlines.coastlon <= LonLimit(1,2)),:);
However, I am unable to divide it each segmentwise, considering linear distance interval of say, 50 km and identify latitude-longitudes within those segments. Any help in this regard is deeply appreciable.

0 Kommentare
Antworten (1)
Walter Roberson
am 6 Feb. 2025
See John D'Errico's File Exchange contribution interparc https://www.mathworks.com/matlabcentral/fileexchange/34874-interparc which is designed for interpolating curves at fixed distances traveled.
6 Kommentare
Walter Roberson
am 7 Feb. 2025
I said "assuming that the coast is continuous". It appears that works for your situation. It would be a nuisance if it did not, partly because it would not be defined what distance should be measured over any jump in the coast.
Walter Roberson
am 7 Feb. 2025
Looking at the map, I am not certain that using Euclidean approximation of the total distance would be good enough for your purposes. On the other hand, interparc expects Euclidean coordinates I expect.
You might need to convert map coordinates to some kind of linear coordinates before using interparc
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!