` `

La línea de órdenes de QGIS

El procesado incluye una herramienta practica que le permite ejecutar algoritmos sin tener que utilizar la caja de herramientas, pero tan solo escribir el nombre del algoritmo que se desee ejecutar.

Esta herramienta es conocida como Línea de órdenes GQIS, y esto es solo una sencilla caja de texto con autocompletado donde se escribe el nombre del comando que se desee ejecutar.

../../../_images/commander1.png

La línea de órdenes de QGIS

La línea de órdenes se inicia del menú Procesamiento o, mas practico, al presionar Shift + Ctrl + M (puede cambiar ese atajo de teclado en la configuración de QGIS si prefiere definir uno diferente). Para cerrarlo sólo presione ESC. Ademas de ejecutar algoritmos de procesado, la línea de órdenes da acceso a la mayoría de las funcionalidades en QGIS, lo que significa que le da una forma práctica y eficaz de ejecutar tareas QGIS y le permite controlar QGIS con un uso reducido de botones y menús.

Además, la línea de órdenes es configurable, así que puede agregar sus comandos personalizados y ellos tienen sólo unas pocas teclas de distancia, por lo que es una herramienta de gran alcance para ayudarle a ser más productivo en su trabajo diario con QGIS.

Comandos disponibles

Los comandos disponibles en la línea de órdenes caen en la siguiente categoría:

  • Algoritmos de procesado. Estos se muestran como Algoritmo de procesamiento: <nombre del algoritmo>.

  • Los elementos del menú. Estos se muestran como Menu item: <Texto de entrada del menú>. Todos los elementos de los menús disponibles desde la interfaz de QGIS están disponibles, incluso si se incluyen en un submenú.

  • Funciones Python. Puede crear funciones cortas en Python que serán entonces incluidas en la lista de comandos disponibles. Ellos se muestran como Function: <nombre de la función>.

Para ejecutar cualquiera de los anteriores, inicie escribiendo y a continuación, seleccione el elemento de la lista de comandos disponibles que aparecen después de filtrar toda la lista de comandos con el texto que ha introducido.

En caso de llamar a una función de Python, puede seleccionar la entrada en la lista, que tiene el prefijo Function: (por ejemplo, Function: removeall), o simplemente escribir directamente el nombre de la función (``removeall en el ejemplo anterior). No hay necesidad de añadir espacios después del nombre de la función.

Crear funciones personalizadas

Las funciones personalizadas se añaden al introducir el código correspondiente de Python en el archivo commands.py que se encuentra en el directorio .qgis2/processing/commander en su carpeta de usuario. Es solo un archivo Python simple donde puede añadir las funciones que necesite.

El archivo es creado con unas pocas funciones de ejemplo la primera vez que se abre la línea de órdenes. Si no ha lanzado la línea de órdenes, puede crear el archivo usted mismo. Para editar el archivo de comandos, utilice su editor de texto favorito. También puede utilizar un editor incorporado llamando al comando edit desde la línea de órdenes. Se abrirá el editor con el archivo de comandos, y se podrá editar directamente y luego guardar los cambios.

Por ejemplo, puede añadir la siguiente función, la cual borre todas las capa:

from qgis.gui import *

def removeall():
    mapreg = QgsMapLayerRegistry.instance()
    mapreg.removeAllMapLayers()

Una vez que se haya añadido la función, estará disponible en la línea de órdenes, y puede invocarlo escribiendo removeall. No hay necesidad de hacer algo más aparte de escribir la función en sí.

Las funciones pueden recibir parámetros. Añadir *args a la definición de su función para recibir argumentos. Cuando llame a la función desde la línea de órdenes, los parámetros tienen que ser pasados separados por espacios.

Aquí esta un ejemplo de una función que carga una capa y toma un parámetro con el nombre del archivo de la capa cargada.

import processing

def load(*args):
  processing.load(args[0])

If you want to load the layer in ;file:/home/myuser/points.shp, type in the Commander text box:

load /home/myuser/points.shp