Groupes d'options
Les options de peinture et de pinceau partagées par les fonctions de dessin, définies une seule fois.
Ensembles d'options partagés par plusieurs fonctions, définis une seule fois ici. La table opts d'une fonction indique quels groupes elle accepte en plus : « accepte aussi Options de peinture » signifie que chaque option ci-dessous est acceptée, avec le même sens et les mêmes valeurs par défaut, en plus de celles de la fonction.
Options de peinture (paint)
Prises en compte par toute commande qui peint des pixels (les fonctions de dessin et les outils de tracé). Chacune est facultative. Par défaut, une commande de dessin ignore la sélection et ne crée pas de symétrie, quoi que l'éditeur affiche ; active-les avec respectSelection = true et symmetry = app.getContext().symmetry (ou une liste d'axes). tilemapMode est rempli à partir du contexte d'édition.
Accepté par : app.blur, app.dodgeBurn, app.drawContour, app.drawCurve, app.drawEllipse, app.drawGradient, app.drawHexagon, app.drawIsoShape, app.drawLine, app.drawPolygon, app.drawRectangle, app.drawStar, app.drawStroke, app.drawTriangle, app.floodFill, app.jumble, app.scatter, app.spray.
respectSelection(boolean; par défaut false) — Passe true pour peindre uniquement dans la sélection actuelle (lis-la avec app.getSelection / app.isSelected). Par défaut, la sélection est ignorée.symmetry(liste de SymmetryAxis: "horizontal" | "vertical" | "diagonal" | "antidiagonal"; par défaut none) — Axes de symétrie passant par le centre du canevas (ou par symmetryX / symmetryY) ; les combinaisons (horizontal + vertical) donnent une symétrie à 4 axes. Aucun par défaut : passe symmetry = app.getContext().symmetry pour suivre l'interrupteur de symétrie de l'éditeur, ou une liste d'axes comme { "vertical" }.symmetryX(number ≥ 0; par défaut the canvas center (width / 2)) — Position de l'axe vertical (et du point où se croisent les deux diagonales) : en pixels depuis le bord gauche du canevas, un multiple de 0.5 (entier = entre deux pixels, x.5 = au milieu d'un pixel). Limitée au canevas. Passe app.getContext().symmetryX pour suivre le repère de l'éditeur (nil signifie centré).symmetryY(number ≥ 0; par défaut the canvas center (height / 2)) — Position de l'axe horizontal (et du croisement des diagonales) : en pixels depuis le bord supérieur du canevas, un multiple de 0.5. Limitée au canevas.tilemapMode(TilemapEditMode: "pixels-edit" | "pixels-auto"; par défaut context.tilemapMode) — Façon dont un calque tilemap reçoit la peinture de pixels : auto donne à chaque cellule peinte sa propre tuile, edit modifie sur place la tuile partagée. Ignoré sur les calques d'image.
Options de placement (tilePlace)
Chacune est facultative. Par défaut, les tuiles sont posées sur chaque cellule donnée, quoi que l'éditeur affiche. Les cellules en miroir reçoivent la tuile en miroir : un axe vertical inverse flipH, un axe horizontal inverse flipV, un axe diagonal la transpose (rotate90 plus un retournement). Une cellule située sur un axe garde la tuile telle qu'elle a été posée.
Accepté par : app.fillTiles, app.stampTiles.
respectSelection(boolean; par défaut false) — Passe true pour ignorer les cellules sans pixel sélectionné (un remplissage s'arrête aussi sur elles).symmetry(liste de SymmetryAxis: "horizontal" | "vertical" | "diagonal" | "antidiagonal"; par défaut none) — Place aussi sur les cellules en miroir de part et d'autre de ces axes (et de leurs combinaisons). Passe app.getContext().symmetry pour suivre l'interrupteur de l'éditeur.symmetryX(number ≥ 0; par défaut the canvas center (width / 2)) — Position de l'axe vertical, en pixels depuis le bord gauche du canevas (un multiple de 0.5).symmetryY(number ≥ 0; par défaut the canvas center (height / 2)) — Position de l'axe horizontal, en pixels depuis le bord supérieur du canevas (un multiple de 0.5).
Options de pinceau (brush)
Prises en compte par les outils de tracé (drawStroke, blur, jumble). Passe un pinceau intégré par sa taille et sa forme, ou un pinceau personnalisé par son nom ou en ligne.
Accepté par : app.blur, app.dodgeBurn, app.drawStroke, app.jumble, app.scatter.
brushSize(integer 1–64; par défaut context.brushSize) — Taille du pinceau en pixels.brushShape(BrushShape: "circle" | "square" | "line" | "diamond" | "cross" | "x" | "star" | "horizontal"; par défaut context.brushShape) — Forme du pinceau. Pour un pinceau personnalisé, utilisebrush.brushAngle(integer 0–180; par défaut context.brushAngle) — Angle du pinceau en degrés : incline la forme "line" (0 = horizontal, 90 = vertical) et fait pivoter "square".brush(brush name, or an inline { rows } / { width, height, mask }) — Un pinceau personnalisé : le nom d'un pinceau défini avec app.defineBrush, ou une définition en ligne. Remplace brushSize, brushShape et brushAngle.
Options d'encre (ink)
Prises en compte par toute commande de peinture sauf erase : comment la couleur de peinture se combine avec les pixels déjà présents. Les options omises viennent du contexte d'édition (ink, shades). Avec ink = "shading", la couleur est ignorée et chaque pixel touché dont la couleur figure dans shades avance d'un cran dans cette liste (une fois par commande, quel que soit le nombre de fois où la forme le recouvre).
Accepté par : app.drawContour, app.drawCurve, app.drawEllipse, app.drawGradient, app.drawHexagon, app.drawIsoShape, app.drawLine, app.drawPolygon, app.drawRectangle, app.drawStar, app.drawStroke, app.drawTriangle, app.floodFill, app.scatter, app.spray.
ink(Ink: "copy" | "simple" | "lock-alpha" | "shading"; par défaut context.ink) — copy remplace les pixels, simple fait une composition alpha, lock-alpha ne recolore que les pixels visibles, shading fait avancer les couleurs dansshades. Ignoré par erase.shades(a list of colors ("#rrggbb[aa]" or { r, g, b, a }), in ramp order; par défaut context.shades) — La rampe que parcourt shading. Un pixel dont la couleur n'est pas dans la liste n'est pas modifié ; un pixel en fin de liste y reste.shadeReverse(boolean; par défaut false) — Shading recule dansshades(le clic droit de l'interface) au lieu d'avancer.
En Markdown : option-groups.md.