Siguiendo con los métodos de Processing, hoy se van a considerar los de GRASS. Estos tienen la particularidad de que para hacerlos funcionar adecuadamente hay que saber cómo introducir el parámetro correspondiente a la región de GRASS; que no es más que una simple extensión. En la imagen siguiente se despliegan, a través del plugin, los 160 algoritmos que de GRASS se tienen a la disposición en 'processing'.
De ellos, escojo el último, v.voronoi, porque sé que la versión que había puesto a disposición recientemente QGIS tenía un bug (desconozco si ha sido resuelto). Por tanto, el despliegue de los respectivos parámetros se encuentra a continuación:
donde para una mayor comprensión de lo que significa cada uno de ellos sugiero que se limiten al manual correspondiente. En la imagen a continuación se tiene el vectorial de puntos que se usará como base para la generación de las regiones de Voronoi (también denominadas polígonos de Thiessen o teselación de Dirichlet). La capa tipo ráster se usará para obtener la extensión y evitar que los puntos de la periferia las tengan muy restringidas; algo que ocurriría en el caso de que la extensión se tomase directamente de la capa de puntos.
El código a usar es el siguiente:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | import processing registry = QgsMapLayerRegistry.instance() random_points = registry.mapLayersByName('random_points') utah_demUTM2 = registry.mapLayersByName('utah_demUTM2') extent = utah_demUTM2[0].extent() xmin, ymin, xmax, ymax = extent.toRectF().getCoords() path = '/home/zeito/pyqgis_data/output_voronoi.shp' processing.runalg("grass:v.voronoi", random_points[0], False, True, "%f,%f,%f,%f" % (xmin, xmax, ymin, ymax), -1, 0, 3, path) |
el cual ejecutado en la Python Console de QGIS produce, al visualizarse en el Map Canvas, el resultado siguiente:
No hay comentarios:
Publicar un comentario