如何导入/导出栅格数据?
可以使用 PostGIS 发行版中的 raster2pgsql
或 GDAL 中的 gdal_translate
导入栅格数据。
raster2pgsql
通常更容易加载,因为 控制加载的选项 直接公开。
gdal_translate
实用工具通常更容易导出栅格数据。
PGHOST=localhost \
PGPORT=5432 \
PGUSER=postgres \
PGPASSWORD=password \
gdal_translate \
-of PNG \
-outsize 10% 10% \
"PG:dbname=db table=tbl" \
foo.png
你也可以在导出中使用 SQL “where” 子句,将你希望放在连接字符串中“where”之后的过滤器添加进去。请注意,过滤器中的单引号已经巧妙地转义了。
PGHOST=localhost \
PGPORT=5432 \
PGUSER=postgres \
PGPASSWORD=password \
gdal_translate \
-of PNG \
-outsize 10% 10% \
"PG:dbname=db table=tbl where='filename=\'abcd.sid\'' " \
outfile.png
你也可以在“where”子句中使用空间过滤器。
PGHOST=localhost \
PGPORT=5432 \
PGUSER=postgres \
PGPASSWORD=password \
gdal_translate \
-of PNG \
-outsize 10% 10% \
"PG:dbname=db table=tbl where='ST_Intersects(rast, ST_SetSRID(ST_Point(-71.0,42.3),4326))' " \
outfile.png