Estoy buscando una manera de combinar un montón de pequeños polígonos adyacentes.
Tengo este tipo de características:
Así que si mi polígonos adyacentes Y tienen el mismo atributo de color, a continuación, quiero combinar los polígonos. Normalmente, quiero combinar las características seleccionadas de la imagen. Yo intente agregar un "ST_TOUCHES" condición, pero todos los polígonos no están necesariamente conectados el uno al otro.
Otra pregunta en este sitio web es similar a este, pero no toman en cuenta que los polígonos necesidad de estar conectados.
Así que el primer paso debería ser algo como:
SELECT ST_Union(ST_SnapToGrid(the_geom,0.0001))
FROM my_poly
GROUP BY color;
Pero cómo agregar la "necesidad de estar conectado" condición ?
Alguna idea ?
EDITAR
He encontrado una solución:
Paso 1) Combinación de todos los polígonos que tienen el mismo color.
Paso 2) Dividir multipartites polígonos a singleparts polígonos.
SELECT (ST_DUMP(ST_UNION(ST_SNAPTOGRID(the_geom,0.0001)))).geom, color
FROM my_poly
GROUP BY color
Pero quizás hay una solución mejor, porque estoy perdiendo algunas informaciones durante el paso 1).