How to find the border points for a set of latitude and longitude coordinates

30 views (last 30 days)
Patrick
Patrick on 22 Oct 2014
Answered: Rob Comer on 24 Oct 2014
Hi,
I am looking for the best way to approach a code that I am attempting to write, I don't have much experience using the Mapping Toolbox in Matlab and am hoping that someone else may and can point me in the right direction. I have the latitude and longitude coordinates for ~100 points in a location that is approximately 5 squares miles in area. I am looking to plot each point in that location, and then from there determine what the basic outline of that area is.
For example, I want to know which points lie on the North edge of the area, which points like on the East edge, which ones are on the South edge and which ones are on the West edge.
If anyone has any advice to help me get started that would be very appreciated.

Accepted Answer

Matt Tearle
Matt Tearle on 22 Oct 2014
Edited: Matt Tearle on 22 Oct 2014
You don't actually need Mapping TB to find boundaries. You can do it with convhull or, if you have 14b, boundary.
But perhaps you want something even simpler than that. To get the points on the North edge, you could just do
idxNorth = (latitude == max(latitude));
northLat = latitude(idxNorth);
northLon = longitude(idxNorth);
This gets only the points that have the exact same latitude as the northernmost point. Use some other condition if that's too exacting (such as latitude > threshhold_latitude).

More Answers (1)

Rob Comer
Rob Comer on 24 Oct 2014
With such a small data extent, you can probably ignore the wrapping of longitude around the earth when computing latitude and longitude limits. But for more widely distributed data there's the Mapping Toolbox geoquadpt function, which will work in your case also, of course.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by