Auswahl
Auswahlformen verbinden sich mit der aktuellen Auswahl (ersetzen, hinzufügen, abziehen, schneiden). Die Auswahlmaske ist les- und schreibbar. (19 Funktionen)
app.canReselect() — liest
Ob app.reselect() eine vorherige Auswahl zum Wiederherstellen hat.
Gibt zurück (boolean): true, wenn es eine gibt.
app.deselect() — ändert
Hebt die Auswahl auf (Auswahl ▸ Auswahl aufheben) – Zeichenbefehle malen danach überall. app.reselect() holt sie zurück.
Gibt nichts zurück.
app.enterQuickMask() — ändert, rückgängig machbar
Schaltet die Schnellmaske ein: Die Auswahl wird zu einer Maske, die du malst, und nichts ist ausgewählt. Solange sie an ist, malen die Zeichenfunktionen die Maske, wenn du ihnen "quickMask" als layerId und frameId übergibst (jede Farbe fügt hinzu, transparente Farbe nimmt weg); alles andere, was das Sprite ändern würde, wird bis app.exitQuickMask() abgelehnt.
Gibt nichts zurück.
app.exitQuickMask() — ändert, rückgängig machbar
Schaltet die Schnellmaske aus: Jedes Maskenpixel mit halber Deckkraft oder mehr wird zur Auswahl.
Gibt nichts zurück.
app.getSelection() — liest
Die aktuelle Auswahl als { x, y, width, height, mask }, oder nil, wenn nichts ausgewählt ist. mask ist eine flache 0/1-Liste über die Grenzen (zeilenweise: (px, py) bei Index py*width + px + 1) – enthalten, wenn die Grenzen höchstens 262144 Pixel umfassen; größere Auswahlen liest du stückweise mit app.getSelectionMask.
Gibt zurück (table): Auswahltabelle oder nil.
app.getSelectionBounds() — liest
Die { x, y, width, height } der aktuellen Auswahl, oder nil, wenn nichts ausgewählt ist.
Gibt zurück (table): { x, y, width, height } oder nil.
app.getSelectionMask(x, y, width, height) — liest
Welche Pixel eines Rechtecks im Sprite-Raum ausgewählt sind, als flache 0/1-Liste (zeilenweise: (px, py) bei Index py*width + px + 1). Alles 0, wenn nichts ausgewählt ist. Höchstens 262144 Pixel pro Aufruf.
x(number)y(number)width(number)height(number)
Gibt zurück (table): Flache 0/1-Liste.
app.isSelected(x, y) — liest
Ob das Sprite-Pixel (x, y) in der aktuellen Auswahl liegt (false, wenn nichts ausgewählt ist).
x(number)y(number)
Gibt zurück (boolean): true, wenn ausgewählt.
app.magicWand(layerId, frameId, points, opts?) — ändert, rückgängig machbar
Wählt die Pixel aus, die der Farbe unter jedem Punkt auf einer Ebene entsprechen, alle Bereiche als eine Auswahl – genau der Zauberstab der Oberfläche (ein Klick oder ein Ziehen).
layerId(string)frameId(string)points(table) — Liste von Punkten { x = n, y = n } (oder { n, n }), 1 bis 1024: { { x = 3, y = 4 } } wählt einen Bereich aus, wie ein Klick; bei mehreren kommt der Bereich jedes Punkts in eine einzige Auswahl, wie beim Ziehen.opts(table, optional)mode(SelectionCombineMode: "replace" | "add" | "subtract" | "intersect"; Standard "replace") — Wie sich die neue Form mit der aktuellen Auswahl verbindet.tolerance(integer 0–255; Standard context.wandTolerance) — Der größte Farbunterschied pro Kanal, der noch als Treffer zählt.contiguous(boolean; Standard context.wandFillMode (true für den zusammenhängenden Modus des Kontexts, false für global)) — Nur die zusammenhängende Region (true) oder jedes passende Pixel auf der Leinwand (false).diagonal(boolean; Standard context.wandDiagonal) — Nur bei zusammenhängend: breitet sich auch auf diagonale Nachbarn aus (8er-Nachbarschaft), sodass die Region durch diagonale 1px-Linien sickert.stopAtGrid(boolean; Standard context.wandStopAtGrid) — Begrenzt die Region auf die Rasterzelle, in die der Klick fällt (die Zelle eines isometrischen Rasters ist die Raute, die es zeichnet, samt den Linienpixeln ihrer beiden oberen Kanten).
Gibt nichts zurück.
app.modifySelection(op, amount, opts?) — ändert, rückgängig machbar
Vergrößert, verkleinert oder umrandet die Auswahl, auf die Leinwand beschnitten – genau Auswahl > Ändern. Der Leinwandrand zählt als Kante der Auswahl.
op(SelectionModifyOp: "expand" | "contract" | "border")amount(number) — Pixel, 1 bis 256.opts(table, optional)shape(SelectionModifyShape: "circle" | "square"; Standard "circle") — Wie der Abstand zur Kante gemessen wird.
Gibt nichts zurück.
app.reselect() — ändert
Stellt die jüngste nicht leere Auswahl wieder her (Auswahl ▸ Erneut auswählen). Wirft einen Fehler, wenn es keine gibt – prüfe mit app.canReselect().
Gibt nichts zurück.
app.selectAll() — ändert, rückgängig machbar
Wählt die gesamte Leinwand aus.
Gibt nichts zurück.
app.selectEllipse(x0, y0, x1, y1, opts?) — ändert, rückgängig machbar
Wählt die Ellipse aus, die in das Rechteck zwischen den beiden Ecken einbeschrieben ist – genau das Ellipsenauswahl-Werkzeug der Oberfläche.
x0(number) — Erste Ecke.y0(number)x1(number) — Gegenüberliegende Ecke (einschließlich).y1(number)opts(table, optional)mode(SelectionCombineMode: "replace" | "add" | "subtract" | "intersect"; Standard "replace") — Wie sich die neue Form mit der aktuellen Auswahl verbindet.
Gibt nichts zurück.
app.selectGridCells(x0, y0, x1, y1, opts?) — ändert, rückgängig machbar
Wählt ganze Zellen des Sprite-Rasters aus (rechteckig, isometrisch oder sechseckig): jede Zelle, die ein Pixel des Rechtecks zwischen den beiden Punkten enthält, genau wie ein Doppelklick (und Ziehen) mit einem Auswahlwerkzeug der Oberfläche.
x0(number) — Ein Pixel in der ersten Zelle.y0(number)x1(number) — Ein Pixel in der letzten Zelle (derselbe Punkt noch einmal wählt eine einzige Zelle aus).y1(number)opts(table, optional)mode(SelectionCombineMode: "replace" | "add" | "subtract" | "intersect"; Standard "replace") — Wie sich die neue Form mit der aktuellen Auswahl verbindet.
Gibt nichts zurück.
app.selectInverse() — ändert, rückgängig machbar
Kehrt die aktuelle Auswahl innerhalb der Leinwandgrenzen um.
Gibt nichts zurück.
app.selectLayerPixels(layerId, frameId, opts?) — ändert, rückgängig machbar
Wählt die gemalten (oder, mit transparent = true, ungemalten) Pixel einer Ebene in einem Frame aus – genau Auswahl > Deckende auswählen / Transparente auswählen und Alt+Klick auf eine Ebene in der Zeitleiste.
layerId(string) — Eine Gruppe wählt die Pixel jeder Ebene darin aus.frameId(string)opts(table, optional)mode(SelectionCombineMode: "replace" | "add" | "subtract" | "intersect"; Standard "replace") — Wie sich die neue Form mit der aktuellen Auswahl verbindet.transparent(boolean; Standard false) — Wählt die Pixel ohne Farbe statt der gemalten.
Gibt nichts zurück.
app.selectPolygon(vertices, opts?) — ändert, rückgängig machbar
Wählt das Innere (und den Umriss) des geschlossenen Polygons durch die Eckpunkte aus – genau die Lassoauswahl / Polygon-Lassoauswahl der Oberfläche.
vertices(table) — Liste von Eckpunkten { x = n, y = n } (oder { n, n }); das Polygon schließt sich automatisch zum ersten zurück. Deckt sowohl die Lassoauswahl als auch die Polygon-Lassoauswahl ab.opts(table, optional)mode(SelectionCombineMode: "replace" | "add" | "subtract" | "intersect"; Standard "replace") — Wie sich die neue Form mit der aktuellen Auswahl verbindet.
Gibt nichts zurück.
app.selectRectangle(x0, y0, x1, y1, opts?) — ändert, rückgängig machbar
Wählt das Rechteck zwischen den beiden Ecken aus – genau das Rechteckauswahl-Werkzeug der Oberfläche (radius rundet die Ecken).
x0(number) — Erste Ecke.y0(number)x1(number) — Gegenüberliegende Ecke (einschließlich).y1(number)opts(table, optional)mode(SelectionCombineMode: "replace" | "add" | "subtract" | "intersect"; Standard "replace") — Wie sich die neue Form mit der aktuellen Auswahl verbindet.radius(an integer 0–1024 for every corner, or a list of four { topLeft, topRight, bottomRight, bottomLeft }; Standard context.selectionCornerRadius) — Rundet die Ecken, in Pixeln (0 = eckig): ein Radius für alle vier oder einer pro Ecke, im Uhrzeigersinn von links oben. Jeder wird auf die Hälfte der kürzeren Seite begrenzt.
Gibt nichts zurück.
app.setSelection(x, y, width, height, mask?) — ändert, rückgängig machbar
Ersetzt die Auswahl durch ein Rechteck oder über mask durch eine beliebige Form.
x(number)y(number)width(number)height(number)mask(table, optional) — Flache 0/1-Liste (width*height, zeilenweise – die Form, die app.getSelection zurückgibt), die nur diese Pixel des Rechtecks auswählt; weggelassen = das ganze Rechteck.
Gibt nichts zurück.
Als Markdown: selection.md.