¿Hay alguna herramienta disponible que me permita ejecutar millones de archivos de forma de paquete y simplificarlos?
¿Hay alguna herramienta disponible que me permita ejecutar millones de archivos de forma de paquete y simplificarlos?
Respuestas:
Puede probar Shapely, una API de Python construida sobre GEOS . Como Shapely y GDAL tienen bibliotecas de Python, puede combinarlas fácilmente con datos de muchas fuentes diferentes (incluidos los archivos de forma) y luego simplificar y exportar según lo desee.
El único inconveniente puede ser la velocidad si está haciendo millones de funciones: podría ser más rápido usar GEOS o JTS directamente.
Vea el método simplificado :
Todos los puntos en el objeto simplificado estarán dentro de la distancia de tolerancia de la geometría original. Por defecto, se utiliza un algoritmo más lento que conserva la topología. Si la topología de preservación se establece en False, se utiliza el algoritmo Douglas-Peucker, mucho más rápido.
>>> p = Point(0.0, 0.0)
>>> x = p.buffer(1.0)
>>> x.area
3.1365484905459389
>>> s = x.simplify(0.05, preserve_topology=False)
>>> s.area
3.0614674589207187
La versión 9.0 de GDAL / OGR agregó la opción -simplify al comando ogr2ogr . La documentación indica que conserva la topología.
-Simplificar tolerancia: (comenzando con GDAL 1.9.0) tolerancia de distancia para simplificación. Este método preservará la topología, en particular para las geometrías de polígonos.
Ejemplo de uso:
ogr2ogr outfile.shp infile.shp -simplify 0.000001
Si sus datos se almacenan en PostGIS, intente usar ST_SimplifyPreserveTopology .
ogr2ogr tiene una opción de "segmentar" que parece hacer lo que necesita: documentación de GDAL ogr2ogr
De esa página:
-segmentize max_dist: (comenzando con GDAL 1.6.0) distancia máxima entre 2 nodos. Se usa para crear extensiones de consultas espaciales de puntos intermedios
GRASS v.generalize
Inspira desde Mapshaper, pero directamente en local, mira en https://github.com/migurski/Bloch