This is an old revision of the document!
Table of Contents
This topic builds on the Mapping from NSW Lidar with QGIS tutorials, though the data can also be used standalone.
One of the really useful sources of mapping data for Australian users is OpenStreetMap (OSM). It can be a bit of a pain to get set up, but is worth putting in the effort, particularly if you are interested in areas outside NSW.
There's a few steps to get going.
Download raw data
Download the .PBF file (australia-latest.osm.pbf) from
http://download.geofabrik.de/australia-oceania/australia.html
Convert data
Basic
Open up the OSGEO4W Shell that comes with QGIS (look under Start → All Programs → QGIS)
Run the following command to convert the .PBF file to SQLite (SpatiaLite) format.
https://github.com/AmericanRedCross/workflows/blob/master/converting_pbf_into_spatialite.md
ogr2ogr -f “SQLite” -dsco SPATIALITE=YES {name_of_new_file}.db {name_of_extracted_file}.pbf
eg ogr2ogr -f “SQLite” -dsco SPATIALITE=YES E:\geodata\ausosm-20230303.db E:\geodata_raw\australia-20230303.osm.pbf
It's useful to include the date in the filenames so you know when the data is from.
Cropping
If you need to crop the PBF file, the use the following command:
ogr2ogr -f “SQLite” -dsco SPATIALITE=YES -spat {x min} {y min} {xmax} {ymax} {output filename}.db {input file name}.osm.pbf
eg For NSW data only, you could run: ogr2ogr -f “SQLite” -dsco SPATIALITE=YES -spat 141 -37.5 153.75 -28 E:\geodata\nswosm-20230303.db E:\geodata_raw\australia-20230303.osm.pbf
The coordinates above are in the following order: West South East North
Fields
You may want to control the fields that you are importing from OSM. This is done using the osmconf.ini file, that can be found under your QGIS installation eg C:\Program Files\QGIS 3.22.10\apps\gdal\share\gdal\osmconf.ini
If you are using Windows, you'll need to edit this file with Administrator permissions (open Notepad by Shift-Right Click→Run as Administrator).
Under Points, Lines and MultiPolygons, find the section that says “# keys to report as OGR fields” and edit the list underneath. For example:
Lines: attributes=name,highway,waterway,barrier,man_made,natural,surface,service,access
Points: attributes=name,barrier,highway,place,man_made,aeroway,amenity,tourism,information,ford,gate,leisure,natural,railway,waterway
Other tags not listed will still be imported, but in a generic field called other_tags. You will still be able to access these tags in QGIS, but it will require a little more effort each time. So you should aim to capture any regularly used tags in the list above.
Take a backup of your osmconf.ini file as if you upgrade QGIS, you'll need to
Load data in QGIS
Open QGIS.
Go to Layer→Data Source Manager and select SpatiaLite.
Select New, and locate the file.
Once you have set up the connection, you can extract data using (for example) Vector Overlay→Extract/clip by extent. Select one of the layers within the file (points, lines, multipolygons) as the Input Layer, and an area to load.
Style data in QGIS
Links
Some other methods of getting OSM data into QGIS can be found at https://wiki.openstreetmap.org/wiki/QGIS_tutorial