Tampa Bay Marine Mappingwith OpenStreetMap
Coleman McCormick@colemanm
SailingBoatingFishing+Mapping
osm.org/user/coleman@colemanm
CHARTS
GOOD
Artistic
Functional
Information-dense
Outdated
Paper & water don’t mix
Data is inherently non-portable
NOT SO GOOD
Daymarks
Soundings
Landmarks
Lights
Channels
How do I map these things?
OpenSeaMapFree & open nautical chartUses the OpenStreetMap databaseopenseamap.org
Beacons Buoys Lights Anchorages
Tagging Examples
seamark:type = beacon_lateralseamark:name = 44seamark:beacon_lateral:category = portseamark:beacon_lateral:colour = redseamark:beacon_lateral:height = 3seamark:topmark:shape = cone, upseamark:topmark:colour = red
Standard daymark
seamark:type = noticeseamark:name = No Wakeseamark:notice:category = no_wakeseamark:notice:function = restriction
Notice to boaters
seamark:type = lightseamark:light_minor:colour = redseamark:light_minor:character = Flseamark:light_minor:period = 4seamark:light_minor:range = 3seamark:light_minor:height = 4
Light
Editing Work!ow
Dogfooding our own softwareFulcrum
geoJSON feature output:
{ "type": "Feature", "properties": { "seamark:type": "beacon_lateral", "seamark:name": "11", “seamark:beacon_lateral:category”: “starboard”, “seamark:beacon_lateral:colour”: “green”, "seamark:beacon_lateral:shape": "pile", "seamark:beacon_lateral:system": "iala-a" }, "geometry": { "type": "Point", "coordinates": [ -82.817967, 28.032795 ] }}
./ogr2osm.py openseamap_markers.geojson
openseamap_markers.osm
http://svn.openstreetmap.org/applications/utils/import/ogr2osm/
Custom database tables from extracts with imposmhttp://imposm.org
imposm -U dbuser -d dbname -m spinnaker-mapping.py \ --read --write --optimize --deploy-production-tables \ florida.osm.pbf
Custom Electronic Charts
Thanks!
http://j.mp/seamarkshttp://openseamap.org/
https://github.com/omniscale/imposm
https://github.com/colemanm/spinnaker