{"id":4308,"date":"2012-06-05T11:41:12","date_gmt":"2012-06-05T15:41:12","guid":{"rendered":"https:\/\/nuxx.net\/blog\/?p=4308"},"modified":"2020-12-27T10:08:10","modified_gmt":"2020-12-27T15:08:10","slug":"mtb-trail-mapping-workflow-with-openstreetmaps","status":"publish","type":"post","link":"https:\/\/nuxx.net\/blog\/2012\/06\/05\/mtb-trail-mapping-workflow-with-openstreetmaps\/","title":{"rendered":"MTB Trail Mapping Workflow with OpenStreetMaps"},"content":{"rendered":"<p>With recent map drawing activities (<a href=\"https:\/\/nuxx.net\/blog\/2012\/06\/05\/new-stony-creek-mtb-trail-maps\/\">1<\/a>, <a href=\"https:\/\/nuxx.net\/blog\/2012\/05\/25\/down-the-openstreetmap-rabbit-hole\/\">2<\/a>, <a href=\"https:\/\/nuxx.net\/blog\/2012\/01\/20\/official-map-for-addison-oaks-mountain-bike-route\/\">3<\/a>) I&#8217;ve been asked about the process I use for creating maps. What follows here is the workflow I used with <a href=\"http:\/\/www.openstreetmap.org\">OpenStreetMap<\/a> (OSM) for the <a href=\"https:\/\/nuxx.net\/blog\/2012\/06\/05\/new-stony-creek-mtb-trail-maps\/\">CRAMBA Stony Creek MTB Trail Maps<\/a>, and hopefully others will find it useful.<\/p>\n<p>I expect I&#8217;ll be following this same workflow for the next maps created, and even possibly revising previous ones using this process because it provides more solid base data than my previous method which consisted of little more than manually tracing SVGs of GPS tracks in Illustrator. It also helps get more map data in OSM, which is basically the cartographic version of <a href=\"http:\/\/www.wikipedia.org\">Wikipedia<\/a>.<\/p>\n<p>One note, using OSM data in your maps requires that the resulting map be licensed under the <a href=\"http:\/\/creativecommons.org\/licenses\/by-sa\/2.0\/\">Creative Commons Attribution-ShareAlike 2.0 Generic (CC BY-SA 2.0)<\/a> license. This basically means that anyone else can redistribute and reuse the map (or portions thereof), as long as they provide appropriate attribution and license their version in a similar way. As I&#8217;m intending these maps to be freely used by the general public (as part of my work with <a href=\"http:\/\/cramba.org\">CRAMBA<\/a>) I&#8217;m happy to do so, but others should be aware of these restrictions before getting too far along in the process.<\/p>\n<p>Here&#8217;s the workflow:<\/p>\n<p><!--more--><\/p>\n<hr>\n<p>&nbsp;<\/p>\n<ol>\n<li>If all trail data needed for a map is already in <a href=\"http:\/\/www.openstreetmap.org\">OpenStreetMap<\/a> (OSM), skip to step 5.<\/li>\n<ul>\n<li>Walk trail routes with GPS recording the route.<\/li>\n<li>Walk slowly \/ evenly.<\/li>\n<li>Recordings done via cycling GPSs are likely not sufficiently accurate.<\/li>\n<li>Multiple passes will allow for more accurate drawing.<\/li>\n<li>Recording waypoints is convenient for noting intersections, features, etc.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<li>Upload GPS data (as <a href=\"http:\/\/en.wikipedia.org\/wiki\/GPS_eXchange_Format\">GPX<\/a>) via <a href=\"http:\/\/www.openstreetmap.org\/traces\">OpenStreetMap&#8217;s Public GPS Traces page<\/a>.<\/li>\n<p>&nbsp;<\/p>\n<li>Use <a href=\"http:\/\/josm.openstreetmap.de\/\">JOSM<\/a> (Java OpenStreetMap Editor) to add the newly mapped routes to the OSM database.<\/li>\n<ul>\n<li>Be sure to appropriately set properties (as appropriate: <tt>highway=path<\/tt>, <tt>bicycle=yes<\/tt>, <tt>foot=yes<\/tt>, <tt>oneway=yes<\/tt>, etc).<\/li>\n<li>Consider using <a href=\"http:\/\/josm.openstreetmap.de\/wiki\/Presets\/Mountainbike\">MTBtagger<\/a> presets.<\/li>\n<li>Consider performing in-depth MTB trail marking as per <a href=\"http:\/\/wiki.openstreetmap.org\/wiki\/Mountainbike\">OpenStreetMap Wiki &#8211; Mountainbike<\/a>.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<li>Validate changes then upload changes with an appropriate description.<\/li>\n<p>&nbsp;<\/p>\n<li>Visit <a href=\"http:\/\/www.openstreetmap.org\">OpenStreetMap<\/a>, use the <a href=\"http:\/\/wiki.openstreetmap.org\/wiki\/Slippy_Map\">Slippy Map<\/a> to show the data to be used for map generation.<\/li>\n<ul>\n<li>Click Export and download an <em>OpenStreetMap XML Data<\/em> file of this data.<\/li>\n<li>Alternately, OSM XML data can be downloaded using <a href=\"http:\/\/www.gnu.org\/software\/wget\/\">wget<\/a> from an appropriate server using a query such as <tt>wget --timeout=0 \"http:\/\/www.overpass-api.de\/api\/xapi?way[bbox=-83.3172,42.631,-82.9011,42.8668][highway=*][@meta]\" -O mfo.osm<\/tt>. See <a href=\"http:\/\/wiki.openstreetmap.org\/wiki\/Downloading_data\">here<\/a>, <a href=\"http:\/\/wiki.openstreetmap.org\/wiki\/Overpass_API\">here<\/a>, and <a href=\"http:\/\/wiki.openstreetmap.org\/wiki\/Platform_status\">here<\/a> for more information.<\/ul>\n<p>&nbsp;<\/p>\n<li>Convert the OSM XML data to <em>Illustrator<\/em> format using <tt><a href=\"https:\/\/nuxx.net\/files\/osm2ai.pl\">osm2ai.pl<\/a><\/tt>.<\/li>\n<ul>\n<li>Command line most useful for US maps: <tt>osm2ai.pl --input=map.osm --projection=mercator --output=map.ai<\/tt><\/li>\n<li><tt>osm2ai.pl<\/tt> seems to require a bunch of MySQL modules, but these are not necessary if just doing a simple conversion.<\/li>\n<li>Only module needing installation on OS X 10.6 seems to be <tt>Geo::Coordinates::OSGB<\/tt>.<\/li>\n<li>Alternate methods for exporting to <em>Illustrator<\/em> format can be found <a href=\"http:\/\/wiki.openstreetmap.org\/wiki\/Exporting_to_Adobe_Illustrator\">here<\/a>.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<li>Open resulting file in <em>Illustrator<\/em>, segment data into logical divisions. Single track, two track, roads, water, etc. Remove unnecessary data.<\/li>\n<ul>\n<li>Maps seem to come with a fair bit of extra cruft, including county outlines, unneeded political divisions, etc.<\/li>\n<li>Hide \/ archive unneeded data (in a hidden layer) instead of deleting it.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<li>Create separate layers and groups for logically separated data. This makes changing line formats easier. For example, I separate out:<\/li>\n<ul>\n<li>Trails<\/li>\n<li>Roads<\/li>\n<li>Water<\/li>\n<li>Intersection Markers<\/li>\n<li>Points of Interest<\/li>\n<li>Routes: Race routes, group ride routes, etc.<\/li>\n<li>Text and Decoration: Frame \/ legal notices \/ logos \/ key \/ scale \/ compass rose \/ version stamp.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<li>Convert any arrows to outlines, as some PDF viewers don&#8217;t display arrowheads properly.<\/li>\n<p>&nbsp;<\/p>\n<li>Solicit feedback on the map from a variety of people to ensure the map is readable and understandable. I personally try to get feedback from:<\/li>\n<ul>\n<li>Those familiar with trails: Can spot errors and omissions.<\/li>\n<li>Those unfamiliar with trails: Can spot confusing sections \/ point out gaps in information.<\/li>\n<li>Non-mountain bikers: Sanity check of general readability and usefulness of map to other user groups.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<li>Check that the map is readable when printed in both color and black and white.<\/li>\n<ul>\n<li>Adding texture (dashes, curved edges, etc) to paths adds to readability.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<li>Check that map is readable on-screen in color to those with various colorblindness.<\/li>\n<ul>\n<li><a href=\"http:\/\/colororacle.org\/\">Color Oracle<\/a> simulates vision deficiencies.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<li><em>Save A Copy&#8230;<\/em> in <em>Illustrator<\/em> as PDF.<\/li>\n<p>&nbsp;<\/p>\n<li>Open PDF in <em>Adobe Acrobat Professional<\/em>. Optimize PDF discarding as much data as possible. Save PDF.<\/li>\n<ul>\n<li>Remove layers, transparencies, etc.<\/li>\n<li>Without this step the PDF will be larger than needed, and some non-Adobe viewers won&#8217;t display map as expected.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<li>Use <em>Acrobat Professional<\/em> to add hyperlinks as needed.<\/li>\n<ul>\n<li>Logos \/ Organization Names: Link to organization&#8217;s websites.<\/li>\n<li>Licenses: Link to full license info (eg: <a href=\"http:\/\/creativecommons.org\/licenses\/by-sa\/2.0\/\">CC-BY SA 2.0<\/a>).<\/li>\n<li>Address: Link to Google Maps \/ Bing \/ etc. search result.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<li>Save final PDF.<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>With recent map drawing activities (1, 2, 3) I&#8217;ve been asked about the process I use for creating maps. What follows here is the workflow<\/p>\n<div class=\"more-link-wrapper\"><a class=\"more-link\" href=\"https:\/\/nuxx.net\/blog\/2012\/06\/05\/mtb-trail-mapping-workflow-with-openstreetmaps\/\">Continue reading<span class=\"screen-reader-text\">MTB Trail Mapping Workflow with OpenStreetMaps<\/span><\/a><\/div>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10,11,57,29],"tags":[],"class_list":["post-4308","post","type-post","status-publish","format-standard","hentry","category-cycling","category-making-things","category-mapping","category-outdoors","entry"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/nuxx.net\/blog\/wp-json\/wp\/v2\/posts\/4308","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nuxx.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nuxx.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nuxx.net\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nuxx.net\/blog\/wp-json\/wp\/v2\/comments?post=4308"}],"version-history":[{"count":38,"href":"https:\/\/nuxx.net\/blog\/wp-json\/wp\/v2\/posts\/4308\/revisions"}],"predecessor-version":[{"id":19313,"href":"https:\/\/nuxx.net\/blog\/wp-json\/wp\/v2\/posts\/4308\/revisions\/19313"}],"wp:attachment":[{"href":"https:\/\/nuxx.net\/blog\/wp-json\/wp\/v2\/media?parent=4308"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nuxx.net\/blog\/wp-json\/wp\/v2\/categories?post=4308"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nuxx.net\/blog\/wp-json\/wp\/v2\/tags?post=4308"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}