Funktionen mit def in Python-FU

Dazu passen diese Beiträge:
“Was ist Python?”
“Der ProzedurenBrowser”
“Neue Zeichnung”
“Funktions-Parameter”

Damit Sie verschiedene wiederkehrende Befehle nicht immer erneut abtippen müssen, können Sie diese unter einem sprechenden Namen zusammenfassen. Man nennt dies Funktion oder Methode. Zukünftig rufen Sie eine einzelne Funktion auf in der die darin enthaltenen Befehle der Reihe nach abgearbeitet werden, so als würden Sie diese von Hand in der Console einzeln eintippen.

So gehts in GIMP

Starten Sie die Python-FU Console über das Menü Filter – Python-FU – Console. Grundsätzlich verwende ich die Befehle, die Sie bereits aus den Beiträgen davor (Neue Zeichnung mit Python-FU) kennen, nur def ist neu aber dazu später mehr.

>>> def my_new_pic():
... image = pdb.gimp_image_new(1600, 900, 0)
... layer = pdb.gimp_layer_new(image, 1600, 900, 0, "name", 100, 0)
... pdb.gimp_image_add_layer(image, layer, 0)
... display = pdb.gimp_display_new(image)
>>>

Tippen Sie das Listing oben in die Console ein. Beginnen Sie jedoch bitte in den gepunkteten Zeilen mit mindestens einem Leerzeichen, da der Interpreter dies sofort mit einer Fehlermeldung quittiert.

Neu ist in diesem Zusammenhang der Befehl def, dieser erwartet einen Funktionsnamen und in Klammern einige Parameter, sofern Sie welche definieren. Folglich müssen Sie diese Syntax einhalten:

>>> def name_ihrer_funktion(parameter_1, parameter_2,... parameter_x):

oder

>>> def name_ihrer_funktion():

Hinweis | Sobald Sie eine Funktion mit : abschließen ändert sich Eingabemodus und Prompt, er wechselt von >>> nach um zu zeigen, das Sie innerhalb der Funktionsdefinition sind. Beenden Sie Ihre Definition mit 2xRETURN.

Der Befehl def legt also eine Funktion mit dem Namen my_new_pic im Arbeitsspeicher an, in der die oben gezeigten Befehle der Reihe nach stehen. Es sind die bekannten Befehle, um eine neue Zeichnung mit einer einzelnen Ebene zu erstellen.

Drücken Sie nochmals RETURN, um die Definition der neuen Funktion abzuschließen und um zum Standardprompt >>> (drei spitze Klammern) zurückzukehren.

>>> my_new_pic()

Jetzt ist dem Python-Interpreter die eingangs gezeigte Befehlskette unter dem Name my_new_pic() bekannt und arbeitet sie ab sobald Sie den Funktionsnamen in die Console eintippen und mit RETURN bestätigen. Immer wenn Sie my_new_pic() eingeben, erzeugt diese Funktion ein neues Bild in der Dimension 1600x900px mit einer Ebene. Eine Kette mit (nur) vier Befehlen können Sie auf diese Weise mit einem einzigen Aufruf starten und abarbeiten lassen.

Hinweis | Flüchtiger Arbeitsspeicher

Die Funktion die Sie in diesem Beitrag mit def name(): angelegt haben, ist flüchtig. Beenden Sie GIMP, dann ist die Funktion verschwunden. Speichern Sie das Coding in einem externen Script und binden es dauerhaft in GIMP ein, können Sie es auch via Mausklick zu jeder Zeit starten.

Hits: 1

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.