-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathextract_roads
executable file
·28 lines (24 loc) · 1.11 KB
/
extract_roads
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/bin/bash
if [ $# -ne 2 ]
then
echo "Error in number of arguments"
exit 1
fi
# vars
DB_NAME="straeto"
SHP_FILE=$1
SHP_FILE_SPHEROID=4326
OUTPUT_PATH=$2
# dropping database if exists
dropdb $DB_NAME
# creating database
createdb $DB_NAME
psql $DB_NAME -c 'CREATE EXTENSION postgis'
# insterting data into database from shapefile
shp2pgsql -s $SHP_FILE_SPHEROID $SHP_FILE roads | psql $DB_NAME
# extracting road shapefiles from database
OUTPUT_PATH="$(realpath $OUTPUT_PATH)"
(mkdir -p $OUTPUT_PATH && cd $_ && pgsql2shp -f extracted_roads $DB_NAME "SELECT osm_id, geom FROM roads WHERE fclass IN \
('motorway', 'trunk', 'primary', 'secondary', 'tertiary', 'unclassified', 'residential', 'service', 'motorway_link', 'trunk_link', 'primary_link', 'secondary_link', 'tertiary_link') AND maxspeed > 0")
(mkdir -p $OUTPUT_PATH && cd $_ && pgsql2shp -f no_extracted_roads $DB_NAME "SELECT osm_id, geom FROM roads WHERE fclass IN \
('motorway', 'trunk', 'primary', 'secondary', 'tertiary', 'unclassified', 'residential', 'service', 'motorway_link', 'trunk_link', 'primary_link', 'secondary_link', 'tertiary_link') AND maxspeed = 0")