#!/bin/sh # # Copyright © 2014 Jonas Smedegaard # Description: Tidy GeoJSON e.g. from # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3, or (at your option) # any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # # Depends: gdal-bin perl-modules set -eu features=$* onlineosmxml2geojson() { set -e echo '[' first=yes for feature in "$@"; do url="http://www.openstreetmap.org/api/0.6/relation/$feature/full" [ -n "$first" ] || echo ',' ogr2ogr --config OSM_USE_CUSTOM_INDEXING NO -f GeoJSON /vsistdout/ /vsicurl_streaming/"$url" multilinestrings first= done echo ']' } onlineosmxml2geojson $features \ | json_pp -json_opt pretty,canonical \ | perl -0 -pe 's/ /\t/g; s/},\s*{/}, {/g; s/\[\s*([\d.,]+)\s*([\d.]+)\s*\]/[$1 $2]/g'