[postgis-users] get unique values from raster intersecting a polygon

Pierre Racine Pierre.Racine at sbf.ulaval.ca
Mon May 28 05:24:41 PDT 2012


You want one value per polygon or one value per red point? It is not clear to me from your drawing.

Pierre

> -----Original Message-----
> From: postgis-users-bounces at postgis.refractions.net [mailto:postgis-users-
> bounces at postgis.refractions.net] On Behalf Of Francois Hugues
> Sent: Saturday, May 26, 2012 5:29 PM
> To: postgis-users at postgis.refractions.net
> Subject: [postgis-users] get unique values from raster intersecting a polygon
> 
> Hello list,
> 
> I have to get values from raster where they intersect polygons from a layer with
> numerous polygons which have shared boundaries, but I don't want to have
> duplicate values from raster. The final result must be something like : gid | val.
> 
> To explain my case, I made a picture.
> 
> I think ST_intersection could help but I don't know what will be the exact result.
> In my example, we have a grid (a DEM for example), each red point is the value
> in the centre of each cell and two polygons A and B. I think cells totally within
> polygons are not a problem, but in green I have highlighted some ambiguous
> cases :
> - 1 and 2 are cells shared by both polygons but not in the same proportions and I
> would like to get value 1 for polygon A but not for B and value 2 for polygon B
> but not for A
> - What will be the result for cell number 3 and for the other green cell without
> number (and for all the ones which are not totally within a polygon) ? I think the
> value is the same for the whole cell (st_dumpaspolygon) and will be returned
> whatever the part of the cell covered by the polygon, but if someone could
> confirm.
> 
> If st_intersection use st_DumpAsPolygon, could it be better to work directly with
> this polygonized table using its own gist index and dealing with shared areas of
> cells between different polygons ?
> 
> Hugues.
> 
> 
> 
> 




More information about the postgis-users mailing list