Skip to content

Instantly share code, notes, and snippets.

@stepankuzmin
Last active August 29, 2015 14:19
Show Gist options
  • Save stepankuzmin/cc802d8376a161516de3 to your computer and use it in GitHub Desktop.
Save stepankuzmin/cc802d8376a161516de3 to your computer and use it in GitHub Desktop.
Filter power from osm.pbf to geojson
#!/bin/bash
# Convert to osm xml
for file in *.osm.pbf; do
echo "Converting $file to ${file%.pbf}"
./osmconvert $file > ${file%.pbf}
done
# Filter power=line
for file in *.osm; do
echo "Filtering $file to ${file%.osm}.power.osm"
./osmfilter $file --parameter-file=power.parameters > ${file%.osm}.power.osm
done
# Convert to GeoJSON
for file in *.power.osm; do
layers="$(ogrinfo -ro -so ${file} | tail -n+3 | cut -d ' ' -f 2)"
for layer in $layers; do
echo "Converting $file to ${file%.power.osm}-${layer}.geojson"
ogr2ogr -f "GeoJSON" "${file%.power.osm}-${layer}.geojson" $file "${layer}"
done
echo "Merging ${file%.power.osm}.geojson"
geojson-merge ${file%.power.osm}-*.geojson > ${file%.power.osm}.geojson
rm -rf ${file%.power.osm}-*.geojson
done
# Cleanup
echo "Clean up"
rm -rf *.osm
// Power lines filter parameters
// --verbose
--drop-relations
--keep=
power=line =plant
--drop=
barrier=
waterway=
power=pole =tower =transformer =switch =minor_line =substation =generator
--keep-tags=
ref=
name=
power=
voltage=
operator=
man_made=
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment