[postgis-users] RE : get unique values from raster intersecting apolygon
pcreso at pcreso.com
pcreso at pcreso.com
Mon May 28 12:45:21 PDT 2012
You could try something like gdal2xyz.py on you raster to create points for each raster cell which can be imported directly into postgis as point geometries, like:
psql "create table xyz (id serial,x decimal, y decimal, z decimal)"
gdal2xyz.py <raster file> | psql "copy xyz (x,y,z) from stdin..."
psql "select addgeometrycolumn()"
psql "update xyz set geom=setsrid(makepoint(x,y),<srid>)"
The result is then a simple spatial join using the polygons & the new points, based on ST_Contains().
HTH,
Brent Wood
--- On Tue, 5/29/12, Francois Hugues <hugues.francois at irstea.fr> wrote:
From: Francois Hugues <hugues.francois at irstea.fr>
Subject: [postgis-users] RE : get unique values from raster intersecting apolygon
To: "PostGIS Users Discussion" <postgis-users at postgis.refractions.net>
Date: Tuesday, May 29, 2012, 1:05 AM
I want one value per red point (which are raster data).
The gid of one polygon will appear as many times as necessary regarding how it intersects the raster.
Hugues.
-------- Message d'origine--------
De: postgis-users-bounces at postgis.refractions.net de la part de Pierre Racine
Date: lun. 28/05/2012 14:24
À: PostGIS Users Discussion
Objet : Re: [postgis-users] get unique values from raster intersecting apolygon
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.
>
>
>
>
_______________________________________________
postgis-users mailing list
postgis-users at postgis.refractions.net
http://postgis.refractions.net/mailman/listinfo/postgis-users
-----Inline Attachment Follows-----
_______________________________________________
postgis-users mailing list
postgis-users at postgis.refractions.net
http://postgis.refractions.net/mailman/listinfo/postgis-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20120528/a1eb28e5/attachment.html>
More information about the postgis-users
mailing list