I want to use the
gdal.Warp method with python (doc). I have seen a
cutlineSQL option which would be nice for my case since cutlines are stored in a PostGIS table but I can not find the syntax for this parameter.
How to tell gdal which database connection to use?
Or maybe I misunderstood the meaning of this parameter?
How to provide a cutline to
Warp method then?
option not presented in the warp tutorial neither.
What I have so far :
from osgeo import gdal from osgeo.gdalconst import GA_ReadOnly # input dataset dataset = gdal.OpenShared(path, GA_ReadOnly) raster = dataset.GetRasterBand(1) # warp options db_conn = """PG:"host=xx.xx.xx.xx port=5432 user='xxxx' password='xxxx' dbname='xxxx'" """ warp_opts = gdal.WarpOptions( format="GTiff", cutlineDSName=db_conn, cutlineSQL="SELECT cutline FROM table WHERE id_1", cropToCutline=True, ) # warp res = gdal.Warp("test.tif", raster, options=warp_opts, )
Producing the error :
ERROR 1: PQconnectdb failed. invalid connection option ""host" ERROR 1: Cannot open PG:"host=xx.xx.xx.xx port=5432 user='xxx' password=XXXXXXXXXX dbname='xxxx'" .
While ogrinfo with the same paramters is working.
If I try to remove some quotes in
db_conn like this :
db_conn = "PG:host=xx.xx.xx.xx port=5432 user='xxxx' password='xxxx' dbname='xxxx'"
I end up with a seg fault...