Cómo transformar los centroides de una cuadrícula en una capa vectorial de puntos con GRASS-QGIS

En el post anterior determiné la distancia mínima desde los centroides de una cuadrícula a un vectorial de puntos usando r.distance, mediante grass.script con python, porque pasé por alto la existencia del comando v.distance con el cual sería mucho más expedito hacerlo. Sin embargo, como paso previo, es necesario extraer los centroides de la cuadrícula y transformarla en una capa vectorial de puntos. Eso es un proceso que se realiza en dos pasos mediante el uso de v.extract y v.type. El primer comando extrae los centroides y el segundo lo transforma en una capa vectorial de puntos. El código completo para el script de python es:

#!/usr/bin/env python
#-* coding: utf-8

from os import system
import grass.script as grass

system("clear")

#Extrae los centroides
grass.run_command("v.extract",
					input="cuadricula",
					output="centroidmap",
					type="centroid",
					quiet="True")


#Transforma los centroides en capa de puntos
grass.run_command("v.type",
					input="centroidmap",
					output="pointmap",
					type="centroid,point",
					quiet="True",
					overwrite="True")

#Remueve los centroides del mapaset
grass.run_command("g.remove",
					vect="centroidmap",
					quiet="True")

El código funciona, tal como se puede observar en la siguiente imagen, y lo ejecuté desde una cónsola de bash; sin necesidad del ambiente de QGIS-GRASS:

centroides

La obtención de la capa de puntos de centroides es “equivalente” a la “barrida” del área total de la cuadrícula en el loop doble del post anterior y permitirá una gran simplificación del código; tema del próximo post.

Esta entrada fue publicada en Código Python, GRASS, QGIS, Software Libre. Guarda el enlace permanente.

2 respuestas a Cómo transformar los centroides de una cuadrícula en una capa vectorial de puntos con GRASS-QGIS

  1. masquesig dijo:

    Que ganas tengo de poder sacar algo de tiempo y poder echarle un ojo a todos estos post, felicidades por tu trabajo!
    Una pregunta, conoces algún libro que me puedas recomendar para este tipo de temas? Había visto uno que ha salido hace poco “Learning Geospatial Analysis with Python” en Amazon, pero quería preguntarte si conocías algo parecido.
    Un saludo

  2. Muchas gracias por tu comentario. Con relación al libro conozco el de Erick Westra que se llama “Python Geospatial Development”. Es muy bueno. Tengo el link para descarga directa. Mándame un twitter para suministrártelo que ya lo ubiqué.

    Saludos

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s