Difference between revisions of "Vector Format Conversion Using ogr2ogr"
Ellis Symons (talk | contribs) |
Ellis Symons (talk | contribs) |
||
Line 29: | Line 29: | ||
'''Convert Single Layer From GPKG and convert the layer type'''<br> | '''Convert Single Layer From GPKG and convert the layer type'''<br> | ||
<pre>ogr2ogr.exe -f "ESRI Shapefile" -sql "SELECT * FROM '2d_code_M01_R'" -nlt POLYGON 2d_code_M01_R.shp all_layers.gpkg</pre> | <pre>ogr2ogr.exe -f "ESRI Shapefile" -sql "SELECT * FROM '2d_code_M01_R'" -nlt POLYGON 2d_code_M01_R.shp all_layers.gpkg</pre> | ||
− | :* ''<tt>-nlt <geometry type></tt>'': assigns the geometry type of the output layer - typical values [POLYGON | LINESTRING | POINT]. See [https://gdal.org/programs/ogr2ogr.html#ogr2ogr gdal ogr2ogr documention] for other options. | + | :* ''<tt>-nlt <geometry type></tt>'': assigns the geometry type of the output layer - typical values [POLYGON | LINESTRING | POINT]. See <b><u>[https://gdal.org/programs/ogr2ogr.html#ogr2ogr gdal ogr2ogr documention]</u></b> for other options. |
'''Convert Single Layer From GPKG and convert the layer type and convert multipart geometries to singlepart'''<br> | '''Convert Single Layer From GPKG and convert the layer type and convert multipart geometries to singlepart'''<br> | ||
<pre>ogr2ogr.exe -f "ESRI Shapefile" -sql "SELECT * FROM '2d_code_M01_R'" -nlt POLYGON -explodecollections 2d_code_M01_R.shp all_layers.gpkg</pre> | <pre>ogr2ogr.exe -f "ESRI Shapefile" -sql "SELECT * FROM '2d_code_M01_R'" -nlt POLYGON -explodecollections 2d_code_M01_R.shp all_layers.gpkg</pre> |
Revision as of 21:25, 7 July 2022
This page lists useful batch file examples for using ogr2ogr.exe. For complete documentation on this tool please visit gdal.org/programs/ogr2ogr
Basic Format Conversion
Format conversion can be done using "-f <format_name>" then specifying the "<destination_filename> <source_filename>".
SHP to GPKG
ogr2ogr.exe -f GPKG 2d_code_M01_R.gpkg 2d_code_M01_R.shp
MIF to SHP - assuming only one geometry type exists in the MIF file
ogr2ogr.exe -f "ESRI Shapefile" 2d_code_M01_R.shp 2d_code_M01.mif
SHP to MIF - TAB and MIF use the same command just with different extensions on the destination file
ogr2ogr.exe -f "Mapinfo File" 2d_code_M01_R.mif 2d_code_M01.shp
MIF to SHP Force Overwrite an Existing File
- -overwrite: overwrite the output file if it exists
ogr2ogr.exe -f "ESRI Shapefile" -overwrite 2d_code_M01_R.shp 2d_code_M01.mif
Bulk Format Conversion
Convert All Files Within Folder to a Single GPKG
ogr2ogr.exe -f GPKG all_layers.gpkg ./path/to/dir
Convert All Files Within Folder to a Single GPKG with Wildcard
ogr2ogr.exe -f GPKG all_layers.gpkg ./path/to/dir/*.shp
Convert All Files From a GPKG to a SHP
ogr2ogr.exe -f GPKG ./path/to/outdir all_layers.gpkg
Convert Single Layer To/From GPKG
Convert Single Layer From GPKG - Uses an SQL statement to select all features from a given layer
ogr2ogr.exe -f "ESRI Shapefile" -sql "SELECT * FROM '2d_code_M01_R'" 2d_code_M01_R.shp all_layers.gpkg
Convert Single Layer From GPKG and convert the layer type
ogr2ogr.exe -f "ESRI Shapefile" -sql "SELECT * FROM '2d_code_M01_R'" -nlt POLYGON 2d_code_M01_R.shp all_layers.gpkg
- -nlt <geometry type>: assigns the geometry type of the output layer - typical values [POLYGON | LINESTRING | POINT]. See gdal ogr2ogr documention for other options.
Convert Single Layer From GPKG and convert the layer type and convert multipart geometries to singlepart
ogr2ogr.exe -f "ESRI Shapefile" -sql "SELECT * FROM '2d_code_M01_R'" -nlt POLYGON -explodecollections 2d_code_M01_R.shp all_layers.gpkg
Convert Single SHP Into a New GPKG Where Layer Name is Different From Database Name
- -nln <layername>: assigns the name of the layer within database
ogr2ogr.exe -f GPKG -nln 2d_code_M01_R new_database.gpkg 2d_code_M01_R.shp
Convert Single SHP Into an Existing GPKG
- -append: appends the layer into an existing database
ogr2ogr.exe -f GPKG -nln 2d_code_M01_R -append existing_database.gpkg 2d_code_M01_R.shp
Converting MIF File With Multiple Geometry Types
MIF With Multiple Geometry Types To SHP
- -where <clause>: "-where" can be used to specify a clause to only select a given geometry type
ogr2ogr.exe -f "ESRI Shapefile" -where "OGR_GEOMETRY='Point'" 2d_zsh_P.shp 2d_zsh.mif ogr2ogr.exe -f "ESRI Shapefile" -where "OGR_GEOMETRY='LineString'" 2d_zsh_L.shp 2d_zsh.mif ogr2ogr.exe -f "ESRI Shapefile" -where "OGR_GEOMETRY='Polygon'" 2d_zsh_R.shp 2d_zsh.mif
MIF With Multiple Geometry Types To a Single GPKG
- -nlt <geometry_type>: Defines the geometry type for the output layer. Useful when converting to formats that implement strict checks for geometry types (e.g. Don't allow "Singlepart" geometry and "Multipart" geometry in the same layer.
ogr2ogr.exe -f GPKG -nln 2d_zsh_P -where "OGR_GEOMETRY='Point'" -nlt POINT 2d_zsh.gpkg 2d_zsh.mif ogr2ogr.exe -f GPKG -nln 2d_zsh_L -where "OGR_GEOMETRY='LineString'" -nlt LINESTRING -append 2d_zsh.gpkg 2d_zsh.mif ogr2ogr.exe -f GPKG -nln 2d_zsh_R -where "OGR_GEOMETRY='Polygon'" -nlt POLYGON -append 2d_zsh.gpkg 2d_zsh.mif
Up |
---|
Back to GDAL Tips and Tricks |