Tengo aproximadamente 1 millón de polígonos que se han dividido por líneas. Sin embargo, esto ha provocado que la mitad de un polígono que ser separados por aproximadamente 50 cm de su otra mitad.
Después de hacer un montón de intentos, utilizando una variedad de métodos todavía no he venido para arriba con una solución fiable.
Me gustaría terminar con características individuales que han tenido el más cercano de los polígonos que se fusionaron para crear una función. Probablemente debe estar basada en la tolerancia o buffer.
1) Mediante la Unión y SnapToGrid como explica Paul Ramsey, en otra pregunta (¿Cuál es la mejor manera de unirse a un montón de pequeños polígonos para formar una mayor polígono?)
CREATE TABLE merged AS
SELECT ST_Union(ST_SnapToGrid(the_geom,0.0001))
FROM parishes
GROUP BY county_name;
Este hizo un gran trabajo de hacer una unión de las partes de cada polígono, sin embargo, me quedé con una sola característica. Así que mi 1 millón de polígonos y se fusionaron en una de Varias partes. Hay una manera de evitar que esto suceda?
2) El Uso De La Topología Entonces me preguntaba si yo podría ser capaz de utilizar la topología dentro de PostGIS 2.0. Me pareció muy difícil de implementar, ya que hay muy pocos ejemplos.
-- Create a topology
SELECT CreateTopology('new_topology', 27700, 'geom'));
-- Add a layer
SELECT AddTopoGeometryColumn('new_topology', 'public', 'original_polygons', 'topogeom', 'MULTIPOLYGON');
Esto crea las aristas y caras, pero ¿cómo debo ahora utilice esta opción para crear una nueva capa de polígonos?
3) ST_Snap - parece que esto va a tomar una geometría a otra geometría. No podía conseguir que esto funcione, ya que yo estaba tratando de complemento a la misma geometría. Esto puede funcionar, aunque como he podido ajustar los puntos en uno de los lados del polígono a su juego y, a continuación, disolver.
Hay otras opciones o consejos sobre cómo conseguir lo que busco?