Pinsel

Definiere eigene Pinsel mit einem Namen und mal dann mit ihnen. Sie existieren nur in der Engine für die Dauer der Sitzung: nicht im Dokument, nicht rückgängig zu machen, nicht gespeichert und getrennt von der Pinselbibliothek des Editors. (6 Funktionen)

app.brushFromSelection(name) — ändert

Definiert einen eigenen Pinsel aus der Form der aktuellen Auswahl (ausgewählte Pixel malen). Wirft einen Fehler, wenn nichts ausgewählt ist oder die Auswahl größer als 64 x 64 ist.

  • name (string) — Der Name, den der Pinsel bekommt.

Gibt zurück (table): { width, height } des Pinsels.

app.defineBrush(name, brush) — ändert

Definiert einen eigenen Pinsel mit einem Namen, den du als brush = "name" in den Zeichenbefehlen oder mit app.useBrush verwenden kannst. Pinsel existieren nur in der Engine für die Dauer der Sitzung: Sie sind nicht Teil des Dokuments, nicht rückgängig zu machen und werden weder gespeichert noch zur Pinselbibliothek des Editors hinzugefügt.

  • name (string) — 1-64 Zeichen. Wird ein vorhandener Name erneut definiert, ersetzt er den alten Pinsel.
  • brush (table) — Gib rows (gut lesbar) oder width, height und mask an. Beispiel: { rows = { ".#.", "###", ".#." } } ist ein Pluszeichen.
    • name (string) — Wird ignoriert – ist nur da, damit ein Pinsel aus einem Feld eines Konfigurationsformulars (app.config.<id>) unverändert übergeben werden kann.
    • rows (list of strings, one per row; ".", " " and "0" are empty, anything else paints) — Der Pinsel als Text, bis zu 64 x 64. Kurze Zeilen werden mit leeren Pixeln aufgefüllt.
    • width (integer 1–64) — Breite in Pixeln (mit mask).
    • height (integer 1–64) — Höhe in Pixeln (mit mask).
    • mask (flat row-major list of width*height 0/1 values) — Der Pinsel als Zahlen (mit width und height).

Gibt zurück (table): { width, height } des Pinsels.

app.getBrush(name) — liest

Ein eigener Pinsel nach Namen als { name, width, height, mask (flache 0/1-Liste), rows (dasselbe als Strings aus # und .) } oder nil, wenn es keinen solchen Pinsel gibt.

  • name (string)

Gibt zurück (table): Pinsel-Tabelle oder nil.

app.getBrushes() — liest

Die mit app.defineBrush definierten eigenen Pinsel in der Reihenfolge ihrer Definition, als { name, width, height }. Eingebaute Pinsel (circle, square, horizontal) werden nicht aufgeführt.

Gibt zurück (table): Array aus { name, width, height }.

app.removeBrush(name) — ändert

Löscht einen mit app.defineBrush definierten eigenen Pinsel. Zeichenbefehle, die schon gelaufen sind, behalten den Pinsel, den sie benutzt haben.

  • name (string)

Gibt zurück (boolean): true, wenn es einen solchen Pinsel gab.

app.useBrush(name) — ändert

Macht einen eigenen Pinsel zum aktuellen Pinsel (brushShape = "custom" und customBrush des Bearbeitungskontexts), sodass Zeichenbefehle ohne brush-Option ihn verwenden – die Werkzeugleiste des Editors zeigt ihn ebenfalls an. Wirft einen Fehler, wenn der Name unbekannt ist.

  • name (string) — Ein mit app.defineBrush definierter Pinsel.

Gibt nichts zurück.

Als Markdown: brushes.md.