Tengo un montón de polígonos superpuestos y estoy tratando de dividir el espacio para evitar que se superpongan. Creo que mi problema es bastante simple. Utilizando algún producto ESRI y http://arcscripts.esri.com/details.asp?dbid=16700, mi compañero de trabajo lo calculó en 48 segundos.
Estoy tratando de hacerlo con postgis usando http://s3.opengeo.org/postgis-power.pdf#page=24 (adivinando los detalles, usando http://trac.osgeo.org/postgis/wiki/UsersWikiSimplifyPreserveTopology como inspiración) pero es tan lento que no puedo hacerlo con más de 10 polys (tengo 800 para dividir). La parte lenta es la ST_Union, probé varias cosas, pero ninguna fue exitosa, aquí está el estado actual de las cosas:
select geom from
(select st_linemerge(st_union(geom)) as geom from
(select st_exteriorring((st_dumprings((st_dump(t.geom)).geom)).geom) as geom from
(SELECT geometry AS geom, id
FROM tt
WHERE campaign_id = 204
ORDER BY id limit 200) t) t2) t3
esto ha estado computando durante 26 minutos (el linemerge () en realidad no lo es). Los polys son MultiPolygons en caso de que st_dump te moleste.
¿Tienes algún consejo? El st_union () de la línea es la parte muy lenta.
Gracias,
Nico
PD: aquí hay algunos números: 852 multipolígonos, que conducen a 14880 polígonos, que conducen a 21467 cadenas lineales que suman 315513 vértices.