Hello Nicolas, Thanks for this quick and useful answer. When I run the ST_IsValidReason on the rings it surprisingly doesn't find any error but when I run it on the original polygon layer I get errors like "Ring Self-intersection[-2.14772 42.5812]" which is what I expected.
So I will try to find a solution on the mailing list history or maybe find a workaround. Didier Le 19 mai 2010 à 10:51, Nicolas Ribot a écrit : >> Hi everybody, >> >> >> >> I'm a postgis new user and I would like to submit here a problem I >> encounter. Here's what I do : >> >> from a polygon layer I merge some of them (with ST_UNION) into bigger ones >> according to an attribute value, then I make an exterior ring (with >> ST_Collect(ST_ExteriorRing())) around these and then I fill these rings >> (with ST_Contains) with all the original polygon that are inside ( I do this >> to have a coherent area without the holes I would have otherwise because of >> some data particularities). >> >> All this works very fine for 99.9 % of the polygons but fails on filling the >> rings for a few of them. When I look at these I see that they have a loop >> which is a probably due to a wrong geometry in the original polygons. >> >> Does any of you know how to deal with this ? >> >> Thanks for your help >> > > Hi, > You should first check the geometry validity (st_isvalid, > st_isValidReason) and isolate invalid geometries to correct them > Some "tricks" can correct them automagically (st_buffer(geom, 0.0) for > instance) and some programs can help you identifiy invalid geometries > (Jump for instance, with its validation plugin). > Mailing list contains useful hints on how to correct invalid geometries. > > HTH > > Nicolas > _______________________________________________ > postgis-users mailing list > postgis-users@postgis.refractions.net > http://postgis.refractions.net/mailman/listinfo/postgis-users _______________________________________________ postgis-users mailing list postgis-users@postgis.refractions.net http://postgis.refractions.net/mailman/listinfo/postgis-users