我的PostGIS 2.0数据库中有一个tiff栅格。我想获取指定纬度/经度点的栅格值。
我有:
- PostgreSQL的9.1
- 具有栅格支持的postgis-2.0-svn
- 导入PostGIS的栅格,其SRID为3035
我的PostGIS 2.0数据库中有一个tiff栅格。我想获取指定纬度/经度点的栅格值。
我有:
Answers:
当ST_Value工作时,您仍然还需要在空间上连接到该点:
SELECT ST_Value(your_raster.rast, ST_Transform(ST_SetSRID(ST_MakePoint(lon,lat),4326),3035))
FROM your_raster
WHERE ST_Intersects(your_raster.rast, ST_SetSRID(ST_MakePoint(lon,lat),4326),3035))
或搭配桌子:
SELECT ST_Value(your_raster.rast, ST_Transform(ST_SetSRID(ST_MakePoint(your_table.lon,your_table.lat),4326),3035))
FROM your_raster
JOIN your_table ON ST_Intersects(your_raster.rast, ST_SetSRID(ST_MakePoint(your_table.lon,your_table.lat),4326),3035))