{"id":8,"date":"2012-06-03T13:09:00","date_gmt":"2012-06-03T17:09:00","guid":{"rendered":"http:\/\/brian.digitalmaddox.com\/blog\/?p=8"},"modified":"2014-07-08T16:45:48","modified_gmt":"2014-07-08T20:45:48","slug":"fun-with-openstreetmap-and-open-source","status":"publish","type":"post","link":"https:\/\/brian.digitalmaddox.com\/blog\/?p=8","title":{"rendered":"Fun with OpenStreetMap and Open Source"},"content":{"rendered":"<p>So as part of my pushing <a href=\"http:\/\/www.openstreetmap.org\/\" target=\"_blank\">OpenStreetMap<\/a> to people, I made some sample\u00a0screen shots\u00a0for a friend of mine who is wanting to move away from paying Google for their maps. \u00a0Thought I&#8217;d share in case other people want to see what&#8217;s possible using OpenStreetMap data for rendering.<\/p>\n<p>For my setup, I have <a href=\"http:\/\/www.postgresql.org\/\" target=\"_blank\">PostgreSQL<\/a>\/<a href=\"http:\/\/www.postgis.org\/\" target=\"_blank\">PostGIS<\/a> running on a server here at home. \u00a0In it I&#8217;ve imported:<\/p>\n<ul>\n<li>\u00a0US Census <a href=\"http:\/\/www.census.gov\/geo\/www\/tiger\/tgrshp2011\/tgrshp2011.html\" target=\"_blank\">Tiger 2011<\/a> data<\/li>\n<li>OSM data for the US, Canada, and Mexico<\/li>\n<li><a href=\"http:\/\/www.naturalearthdata.com\/\" target=\"_blank\">Natural Earth<\/a> data for the world<\/li>\n<li>USGS quadrangle names and <a href=\"http:\/\/geonames.usgs.gov\/\" target=\"_blank\">GNIS<\/a><\/li>\n<li><a href=\"http:\/\/www.geonames.org\/\" target=\"_blank\">Geonames<\/a><\/li>\n<li><a href=\"http:\/\/www.gadm.org\/\" target=\"_blank\">Global Administrative Areas<\/a> gadm2 data<\/li>\n<\/ul>\n<div>On top of that, I&#8217;m also running the\u00a0<a href=\"http:\/\/geoserver.org\/display\/GEOS\/Welcome\" target=\"_blank\">Geoserver<\/a>\u00a02.2 beta to provide all of the data as a <a href=\"http:\/\/www.opengeospatial.org\/standards\/wms\" target=\"_blank\">WMS<\/a>, <a href=\"http:\/\/www.opengeospatial.org\/standards\/wcs\" target=\"_blank\">WCS<\/a>, and <a href=\"http:\/\/www.opengeospatial.org\/standards\/wfs\" target=\"_blank\">WFS<\/a> <a href=\"http:\/\/www.opengeospatial.org\/\" target=\"_blank\">OGC<\/a> services. \u00a0The OSM data was imported using the excellent <a href=\"http:\/\/imposm.org\/docs\/imposm\/latest\/\" target=\"_blank\">imposm<\/a>\u00a0tool. \u00a0I used the styles from <a href=\"http:\/\/wiki.openstreetmap.org\/wiki\/OpenStreetMap-in-a-Box\" target=\"_blank\">OSMinaBox<\/a> for WMS styling with some additions I made to the SLDs to make sure additional features were rendered.<\/div>\n<div><\/div>\n<div>The following\u00a0screen shots\u00a0are samples I&#8217;ve made using some of this data. \u00a0I threw them together for Doug so didn&#8217;t really do any tweaking to label placements and the like.\u00a0<\/div>\n<div><\/div>\n<table align=\"center\" cellpadding=\"0\" cellspacing=\"0\">\n<tbody>\n<tr>\n<td><a href=\"http:\/\/2.bp.blogspot.com\/-en4HcSsIUR0\/T8uQnDB8ejI\/AAAAAAAAApo\/IU9n4K8SF_I\/s1600\/snapshot1.png\" imageanchor=\"1\"><img loading=\"lazy\" decoding=\"async\" border=\"0\" height=\"386\" src=\"http:\/\/2.bp.blogspot.com\/-en4HcSsIUR0\/T8uQnDB8ejI\/AAAAAAAAApo\/IU9n4K8SF_I\/s640\/snapshot1.png\" width=\"640\"><\/a><\/td>\n<\/tr>\n<tr>\n<td>Screenshot 1 &#8211; OSM overview<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div><\/div>\n<div>In this screen shot, I used the US Tiger 2011 Counties data set for the background layer. \u00a0Plus it helped me to locate and zoom into my areas of interest. \u00a0The OSM* layers are all WMS renderings from my local Geoserver install using the above-mentioned SLDs. \u00a0OSM_Roads is actually a database view that imposm makes with all of the road layers merged together.<\/div>\n<div><\/div>\n<div>This second screenshot is zoomed in a level so that Geoserver does more labeling based on the SLD rules.<\/div>\n<div><\/div>\n<table align=\"center\" cellpadding=\"0\" cellspacing=\"0\">\n<tbody>\n<tr>\n<td><a href=\"http:\/\/1.bp.blogspot.com\/-0Wh3mmScOSE\/T8uYuvJu53I\/AAAAAAAAAp0\/40EJFKy3H80\/s1600\/snapshot2.png\" imageanchor=\"1\"><img loading=\"lazy\" decoding=\"async\" border=\"0\" height=\"388\" src=\"http:\/\/1.bp.blogspot.com\/-0Wh3mmScOSE\/T8uYuvJu53I\/AAAAAAAAAp0\/40EJFKy3H80\/s640\/snapshot2.png\" width=\"640\"><\/a><\/td>\n<\/tr>\n<tr>\n<td>Screenshot 2 &#8211; Zoomed in example<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div><\/div>\n<div>On this third screenshot, I overlaid the USGS GNIS file with my own rendering rules inside QGIS. \u00a0I basically used SJJB icons under QGIS to make GNIS look a little nicer. \u00a0However, the bluish-green dots show I&#8217;m still not done with the style in QGIS and once it&#8217;s done there I&#8217;ll move it over to Geoserver to do the WMS rendering there as well. \u00a0<\/div>\n<table align=\"center\" cellpadding=\"0\" cellspacing=\"0\">\n<tbody>\n<tr>\n<td><a href=\"http:\/\/1.bp.blogspot.com\/-Fv6CUc7F2hU\/T8uZWV4I4hI\/AAAAAAAAAp8\/iAb0rH5e6BU\/s1600\/snapshot3.png\" imageanchor=\"1\"><img loading=\"lazy\" decoding=\"async\" border=\"0\" height=\"388\" src=\"http:\/\/1.bp.blogspot.com\/-Fv6CUc7F2hU\/T8uZWV4I4hI\/AAAAAAAAAp8\/iAb0rH5e6BU\/s640\/snapshot3.png\" width=\"640\"><\/a><\/td>\n<\/tr>\n<tr>\n<td>Screenshot 3 &#8211; GNIS overview<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div><\/div>\n<div><\/div>\n<div>Here&#8217;s my quick post for now. \u00a0Just wanted to do a quick showing of how you can make decent looking maps from completely free data. \u00a0I apologize in advance since I have no artistic skills whatsoever though \ud83d\ude42<\/div>\n","protected":false},"excerpt":{"rendered":"<p>So as part of my pushing OpenStreetMap to people, I made some sample\u00a0screen shots\u00a0for a friend of mine who is wanting to move away from paying Google for their maps. \u00a0Thought I&#8217;d share in case other people want to see &hellip; <a href=\"https:\/\/brian.digitalmaddox.com\/blog\/?p=8\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-8","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/brian.digitalmaddox.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/8","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/brian.digitalmaddox.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/brian.digitalmaddox.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/brian.digitalmaddox.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/brian.digitalmaddox.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=8"}],"version-history":[{"count":0,"href":"https:\/\/brian.digitalmaddox.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/8\/revisions"}],"wp:attachment":[{"href":"https:\/\/brian.digitalmaddox.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=8"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/brian.digitalmaddox.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=8"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/brian.digitalmaddox.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=8"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}