Outdated version of the documentation. Find the latest one here.

Der QGIS Commander

Die Verarbeitung Umgebung enthält ein praktisches Tool, das es Ihnen möglich macht Algorithmen ohne die Werkzeugkiste zu benutzen durchzuführen indem Sie den Namen des Algorithmus, den Sie ausführen wollen, eingeben.

Dieses Tool ist als der Commander bekannt und es ist einfach ein Textfenster mit Autovervollständigungsfunktion, in das Sie den Befehl, den Sie ausführen wollen, eingeben.

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

Der QGIS Commander

Der Commander wird vom Verarbeitung Menü gestartet oder durch drücken von Alt + Strg + M (Sie können die voreingestellten Tastenkürzel in der QGIS Konfiguration ändern, wenn Sie einen anderen bevorzugen). Neben der Möglichkeit Verarbeitung Algorithmen auszuführen ermöglicht der Commander Ihnen den Zugang zu den meisten Funktionalitäten von QGIS, was eine praktische und effiziente Möglichkeit, QGIS Aufgaben durchzuführen, darstellt und was Ihnen ermöglicht QGIS mit einer reduzierten Anwendung von Knöpfen und Menüs zu kontrollieren.

Zudem ist der Commander konfigurierbar, Sie können also benutzerdefinierte Befehle hinzufügen und finden Sie dann nur ein paar Tastendrücke entfernt, was es zu einem mächtigen Werkzeug macht, das Ihnen hilft bei Ihrer täglichen Arbeit produktiver mit QGIS zu werden.

Zur Verfügung stehende Befehle

Die zur Verfügung stehenden Befehle im Commander fallen in die folgenden Kategorien:

  • Verarbeitung Algorithmen. Diese werden als Processing algorithm:<Name des Algorithmus> gezeigt.

  • Menu actions. Diese werden als Menu action:<Menüeintragtext gezeigt. Alle zur Verfügung stehenden Menüelemente von der QGIS Oberfläche sind zugänglich, auch wenn sie sich in einem Untermenü befinden.

  • Pythonfunktionen. Sie können kurze Pythonfunktionen erstellen, die dann in die Liste von zur Verfügung stehenden Befehlen eingefügt werden. Sie werden als Function:<Funktionsname> gezeigt.

Um einen der obigen Befehle zum Laufen zu bringen fangen Sie einfach an einzugeben und wählen Sie das entsprechende Element aus der Liste der zur Verfügung stehenden Befehle, das nach dem Filtern der ganzen Liste von Befehlen erscheint, aus.

Im Falle des Aufrufen eines Pythonfunktion können Sie den Eintrag in der Liste, dem der Begriff Function: vorausgeht, auswählen (zum Beispiel Function:removeall) oder Sie geben den Funktionsnamen (removeall im vorigen Beispiel) direkt ein. Sie müssen keine Klammern nach dem Funktionsnamen eingeben.

Benutzerdefinierte Funktionen erstellen

Benutzerdefinierte Funktionen werden eingegeben indem Sie den entsprechenden Pythoncode in die commands.py Datei, die Sie im .qgis2/processing/commander directory in Ihrem Benutzerverzeichnis finden, eingeben. Es ist nur eine einfach Python Datei in die Sie alle Funktionen, die Sie brauchen eingeben können.

Die Datei wird mit einigen Beispielfunktionen erstellt wenn Sie den Commander das erste Mal öffnen. Wenn Sie den Commander noch nicht geöffnet haben können Sie die Datei selber erstellen. Um die Befehlsdatei zu bearbeiten benutzen Sie Ihren bevorzugten Texteditor. Sie können auch einen integrierten Editor, indem Sie den edit Befehl aus dem Commander heraus aufrufen, benutzen. Dies öffnet den Editor mit der Befehlsdatei und Sie können diesen direkt bearbeiten und dann Ihre Änderungen speichern.

Beispielsweise können Sie die folgende Funktion, die alle Layer entfernt, hinzufügen.

from qgis.gui import *

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

Nachdem Sie die Funktion hinzugefügt haben, steht sie im Commander zur Verfügung und Sie können sie durch Eingabe von removeall aufrufen. Es braucht nichts weiter getan werden als die Funktion selber zu schreiben.

Funktionen können Parameter empfangen. Fügen Sie *args Ihrer Funktionsdefinition hinzu um Argumente zu empfangen. Wenn Sie die Funktion aus dem Commander aufrufen müssen Parameter getrennt durch Leerzeichen übergeben werden.

Hier ist ein Beispiel einer Funktion, die einen Layer lädt und einen Parameter mit dem Dateinamen von dem zu ladenden Layer nimmt.

import processing

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

Wenn Sie den Layer in /home/myuser/points.shp laden wollen, geben Sie in das Commander Textfeld ein:

``load /home/myuser/points.shp``