diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 38 |
1 files changed, 38 insertions, 0 deletions
@@ -82,3 +82,41 @@ data/victoria-addr.osm.geojson: data/victoria-addr.osm.pbf data/victoria-addr.osm.fgb: data/victoria-addr.osm.geojson ogr2ogr -f FlatGeobuf -nlt PROMOTE_TO_MULTI -skipfailures -mapFieldType Integer64List=String $@ $< + +data/victoria-addr.osm.centroids.fgb: data/victoria-addr.osm.fgb + qgis_process run native:centroids -- INPUT='$<|layername=victoria-addr.osm|option:VERIFY_BUFFERS=NO' OUTPUT=$@ + +data/asgs.zip: + wget -O $@ 'https://www.abs.gov.au/AUSSTATS/subscriber.nsf/log?openagent&1270055001_ASGS_2016_vol_1_geopackage.zip&1270.0.55.001&Data%20Cubes&C406A18CE1A6A50ACA257FED00145B1D&0&July%202016&12.07.2016&Latest' + +loadMB: + ogr2ogr -f PostgreSQL -where 'STATE_CODE_2016 = 2' PG: /vsizip/asgs.zip/ASGS\ 2016\ Volume\ 1.gpkg -nln mb -select 'MB_CODE_2016' MB_2016_AUST + +data/mb.geojson: + ogr2ogr -f GeoJSON -where 'STATE_CODE_2016 = 2' $@ /vsizip/data/asgs.zip/ASGS\ 2016\ Volume\ 1.gpkg -lco WRITE_BBOX=YES -lco COORDINATE_PRECISION=7 -lco RFC7946=YES -lco WRITE_NAME=NO -lco ID_FIELD=MB_CODE_2016 -nln mb -select 'MB_CODE_2016' MB_2016_AUST + +data/mb.fgb: data/mb.geojson + ogr2ogr -f FlatGeobuf $@ $< + +# extract roads from OSM +data/victoria-roads.osm.pbf: data/victoria.osm.pbf + osmium tags-filter --remove-tags --output=$@ $< w/highway=motorway,trunk,primary,secondary,tertiary,unclassified,residential,living_street,road + +# extract road lines into geojson +data/victoria-roads.geojson: data/victoria-roads.osm.pbf + osmium export --geometry-types=linestring --output-format=geojsonseq --output $@ $< + +# then convert to fgb +data/victoria-roads.fgb: data/victoria-roads.geojson + ogr2ogr -f FlatGeobuf -nlt LINESTRING $@ $< + +# construct block polygons based on OSM roads +data/blocks.fgb: data/victoria-roads.fgb + qgis_process run native:polygonize -- INPUT=$< KEEP_FIELDS=FALSE OUTPUT=$@ + +# count OSM addresses by block, those with no OSM addresses we can import all the candidate addresses without conflation issues +dist/addressesPerBlock.fgb: data/victoria-addr.osm.centroids.fgb data/blocks.fgb + qgis_process run native:countpointsinpolygon -- POINTS=$< POLYGONS='data/blocks.fgb|layername=blocks' FIELD=NUMPOINTS OUTPUT=$@ + +summariseAddressesPerBlock: + ogrinfo -dialect sqlite -sql 'select count(*), NUMPOINTS = 0 from addressesPerBlock group by (NUMPOINTS = 0)' data/addressesPerBlock.fgb |