Low resolution files.

Hi,

I'm new to this forum and quite new to GIS as well. I'd like to know whether you plan to make lower resolution files available (as GSHHS does http://www.ngdc.noaa.gov/mgg/shorelines/gshhs.html) ?

Otherwise what are the simplest ways to generate lower resolution shapefiles from your dataset?

Hope you can enlighten me!

Thanks for your time,

Jun.

Perl script

I've previously worked with the WDB data, and wrote some code to convert that to SVG files for arbitrary resolutions:
http://user.interface.org.nz/~gringer/hacking/wdb2svg.txt

I intend to update this code for the GADM data (probably in a couple of months), now that I've discovered this website. It may actually work as-is, if the GADM data is in the same format.

My approach was to iterate through the points on shape paths, calculating the euclidean distance between points. If that distance was less than the resolution, then the next point wasn't included (but end points are always placed).

David Eccles (gringer)

Re: Perl script

If you have never done line simplification, I suggest you look at:

http://en.wikipedia.org/wiki/Ramer%E2%80%93Douglas%E2%80%93Peucker_algor...

It's simple and was proved efficient from end-users perspective. I suppose there are other algorithms with better/different mathematical properties.

--
Patrick Mézard

Re: line simplification

Thanks for pointing that out Patrick, I wasn't aware of that method. I might have a try at that algorithm and see if things work better/faster.

I've actually ended up doing something somewhat similar to that with an R script that converts GADM data to SVG files. My method does not generate an optimal solution, but I think it might be a slightly quicker process, roughly O(n), rather than O(n^2) [my guess from a first glance at that algorithm]. I produce a sequence of 3-points (nth, n+1th, n+2th), and work out the orthogonal distance between line (n,n+2) and point (n+1) for each point along the polygon. I then iterate through these distances, and when the cumulative error (from the last included point) exceeds epsilon, I include the point at which this error is exceeded.
--
David Eccles