Zum Inhalt springen

Animationen, Paint-Tools und Editor-Workflow-Updates ​

Dieses Update macht Lopaka besser für den Bau echter Embedded-Screens: Du kannst vorgefertigte Animationen hinzufügen, Bitmap-Ebenen direkt auf der Zeichenfläche bearbeiten, Ebenen schneller auswählen und vollständigeren Code für unterstützte Plattformen exportieren.

Integrierte Animationen ​

Lopaka enthält jetzt einen integrierten Animations-Browser für Projekte mit Animations-Code-Generierung.

Öffne das Image-Tool, wähle Animation und wähle dann eine Animation aus der Liste. Der Browser hat Kategorien, Suche, Hover-Vorschauen und Steuerelemente für Größe/Detail, damit du die richtige Animation findest, bevor du sie auf dem Screen platzierst.

Animationen können mit 32x32, 48x48 oder 64x64 hinzugefügt werden. Du kannst auch die Detailstufe wählen:

  • High: 28 Frames
  • Medium: 14 Frames
  • Low: 7 Frames

Weniger Details halten die Animation für die Firmware kleiner. Lopaka zeigt eine geschätzte Datengröße für die gewählte Größe und Detailstufe an, bevor du sie hinzufügst.

Wenn du eine Animation platzierst, erstellt Lopaka eine Animations-Ebene in der Mitte der Zeichenfläche. Sie verhält sich wie eine normale Ebene für Positionierung und Reihenfolge. Wenn sie ausgewählt ist, spielt sie im Editor; wenn sie nicht ausgewählt ist, zeigt sie das erste Frame.

Generierter Animations-Code ​

Animations-Ebenen generieren jetzt Wiedergabe-Code, nicht nur statische Bitmap-Daten.

Mit aktiviertem Include animation in den Code-Einstellungen generiert Lopaka Frame-Daten, einen updateAnimations()-Helper und den Zeichen-Code, der nötig ist, um Frames im Zeitverlauf weiterzuschalten. Plattformen, die das Zeichnen von Animationen gruppieren, erhalten zusätzlich einen drawAnimations()-Helper.

Bei Adafruit GFX-Ausgaben im Arduino-Stil enthält der generierte Sketch eine loop(), die Animationen neu zeichnet. Bei U8g2-Arduino-Ausgaben wird das Animations-Update in die U8g2-Betrachtungsschleife verdrahtet. U8g2-ESP-IDF-Ausgaben bleiben einbettbar, erzeugen also keine app_main()-Funktion für dich.

Animations-Anhänge werden in den Code-Einstellungen aufgelistet, wenn der Screen Animations-Ebenen nutzt. Lade sie mit dem generierten Code herunter und lege sie neben deinen Sketch oder deine Projektdateien.

Bessere Paint-Bearbeitung ​

Das Paint-Tool hat jetzt Pinsel-Muster. Wähle Full, Checkerboard, Horizontal lines, Vertical lines oder Circle aus dem Muster-Dropdown, und die Vorschau aktualisiert sich, bevor du zeichnest.

Der Radierer-Modus kann jetzt direkt bei der Nutzung von Paint umgeschaltet werden. Das Löschen per Rechtsklick funktioniert weiterhin, und beide Löschpfade nutzen das gewählte Pinsel-Muster.

Paint-Ebenen können jetzt auch direkt auf der Zeichenfläche zugeschnitten werden. Wähle eine Paint-Ebene, gehe in den Zuschneide-Modus, passe die orangefarbenen Zuschneide-Griffe an und wende dann an oder brich ab. Angewandte Zuschnitte werden zur Undo-Historie hinzugefügt.

Schnellere Ebenenauswahl ​

Die Ebenen-Liste unterstützt jetzt die Auswahlmuster, die du von Desktop-Tools erwartest.

Nutze Ctrl/Cmd + Klick, um Ebenen in der Auswahl umzuschalten. Nutze Shift + Klick, um einen Bereich ab der zuletzt angeklickten Ebene auszuwählen. Gruppen-Kopfzeilen können auch als Gruppe ausgewählt oder umgeschaltet werden, und die Bereichsauswahl umfasst Ebenen in eingeklappten Gruppen.

Suche dort, wo sie hilft ​

Icon Packs haben jetzt eine Suche über integrierte Icons und Bilder des aktuellen Projekts hinweg. Galerie-Suche.

Die Animationssuche filtert die Animationsliste nach Namen und zeigt nur übereinstimmende Kategorien an.

Code- und Plattform-Updates ​

U8g2-Dreiecke folgen jetzt durchgehend dem Plattformverhalten: Dreieck-Ebenen sind gefüllt, und es gibt keinen Füll-Umschalter für sie.

Polygon-Ebenen generieren Hilfsfunktionen mit Namen, die vom Ebenen-Namen abgeleitet und in gültige Code-Bezeichner umgewandelt werden.

Auf unterstützten Farb-Plattformen können Textebenen eine Hintergrundfarbe nutzen, und dieser Hintergrund wird in den generierten Text-Zeichen-Code aufgenommen.