Skip to main content

Generalizes collections of lines on maps to simpler lines for improved labeling.

Project description

Skeletron generalizes collections of lines to a specific spherical mercator zoom level and pixel precision, using a polygon buffer and voronoi diagram as described in a 1996 paper by Alnoor Ladak and Roberto B. Martinez, “Automated Derivation of High Accuracy Road Centrelines Thiessen Polygons Technique” (http://proceedings.esri.com/library/userconf/proc96/TO400/PAP370/P370.HTM).

Required dependencies:

You’d typically use it via one of the provided utility scripts, currently just these two:

skeletron-osm-streets.py

Accepts OpenStreetMap XML input and generates GeoJSON output for streets using the “name” and “highway” tags to group collections of ways.

skeletron-osm-route-rels.py

Accepts OpenStreetMap XML input and generates GeoJSON output for routes using the “network”, “ref” and “modifier” tags to group relations. More on route relations: http://wiki.openstreetmap.org/wiki/Relation:route

The Name

The first two implementations of Skeletron used the “straight skeleton” of a polygon to find a generalized center, and ultimately didn’t work very well.

The straight skeleton:
http://twak.blogspot.com/2009/01/that-straight-skeleton-again.html
How it’s useful for maps:
http://aci.ign.fr/Leicester/paper/Haunert-v2-ICAWorkshop.pdf

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for Skeletron, version 0.10.0
Filename, size File type Python version Upload date Hashes
Filename, size Skeletron-0.10.0.tar.gz (16.0 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page