Saltar al contenido

Dividir un shapefile complejo en una cuadrícula

Solución:

Terminé creando mis propias herramientas para hacer esto.

Usé la biblioteca Clipper (http://www.angusj.com/delphi/clipper.php) junto con OGR para dividir mi configuración de datos. Algo a tener en cuenta es que realizar intersecciones ingenuamente con esta biblioteca lleva mucho tiempo, así que en su lugar utilicé un enfoque de árbol cuádruple … es decir, dividir en cuatro celdas de cuadrícula, dividir cada una de ellas en cuatro más, etc., hasta que obtenga la resolución deseada. Sin embargo, la biblioteca funciona muy bien, he adjuntado una captura de pantalla que muestra los resultados en el hemisferio oriental:

ingrese la descripción de la imagen aquí

El resultado anterior tomó aproximadamente 4.5 horas en un procesador de 1.33GHz.

Aquí están las herramientas en caso de que alguien se encuentre con un problema similar en el futuro. Tenga en cuenta que son pruebas de conceptos pirateadas y probablemente no debería usarlas directamente (aunque podría servir como un buen punto de partida para algo):

https://github.com/preet/scratch/tree/master/gis/polytoolkit

https://github.com/preet/scratch/tree/master/gis/shapefiles/shptk

Definitivamente parece que tienes problemas de geometría. Es poco probable que pueda producir resultados limpios a partir de un archivo de entrada sucio, independientemente del software utilizado, a menos que primero aborde sus problemas de geometría. Una vez que haya resuelto sus problemas de geometría, puede intentar lo siguiente si aún tiene problemas:

1) Asegúrese de que su conjunto de datos de cuadrícula tenga la misma proyección que su conjunto de datos poligonal mundial. Si no es así, recréelo en la proyección adecuada.

2) Convierta todas las funciones en una sola pieza, mucho más fácil de procesar

3) Elimine todos los campos extraños manteniendo solo el campo de identificación que le permitirá unir sus atributos nuevamente después de que se haya realizado la intersección; nuevamente, es mucho más fácil de procesar

4) En lugar de cruzar todo el dataset de cuadrícula con el dataset de polígono mundial completo, intente recorrer sus polígonos de cuadrícula, seleccionar los polígonos que se cruzan en su dataset mundial y realizar un clip en función de su polígono de cuadrícula. Esto le permitirá aislar cualquier problema y, al final, podrá fusionar los resultados para lograr su objetivo original.

5) Intente usar polígonos de cuadrícula más grandes.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *