alpha
Login
or
Join now
jmrp.io
/
kleidos
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
[READ-ONLY] Mirror of https://github.com/jmrplens/kleidos. Kleidos — Hardware BLE password manager for ESP32-S3 (M5StickC Plus2, StickS3, M5Stack Gray, T-Deck, Cardputer)
jmrplens.github.io/kleidos/
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Overview
Issues
Pulls
Pipelines
kleidos
/
test
/
ui
/
test_aa_shapes
/
at
main
1 file
José M. Requena Plens
Animate the PIN dial at ~30 fps (partial + incremental redraw)
3mo ago
e37bef23
test_aa_shapes.cpp
Animate the PIN dial at ~30 fps (partial + incremental redraw) The dial repainted the whole frame every tick — fillScreen + re-render of the static brand/ref-ring/markers/dots/footer + a full ~22 ms blit — so it ran at ~15 fps and the fill stepped in coarse ~36 deg jumps. Within a digit only the wedge advances; the hero numeral, active marker and ref-ring numeral change only on a digit boundary. - Split drawStickArc into the (static-per-digit) ref-ring and the dial, and add stickDialBox() so a partial repaint clears only the dial's box — the dirty region collapses there and the blit no longer covers the whole panel. - New AA primitive fillAnnulusSectorAA(from,to) (+ host-tested sectorCoverage255) and drawPinDialSlice: a same-digit tick paints ONLY the newly revealed [lastSweepPercent_, percent] arc slice over the existing track (1 deg overlap so the AA seam merges), so the per-tick cost drops from ~67 ms to a few ms. - handleSelecting dispatches: digit boundary / lock -> full drawStickFrame; same-digit advance -> incremental slice (partial-box redraw as fallback). Measured on a Stick S3: a 3 s hold renders ~91 frames (~30 fps, was ~15) with a smooth gradient fill; the static dial is byte-identical. Native +5 sector tests. (Establishes the dirty-only render pattern — repaint only what changes — to roll out across the rest of the animated UI next.)
3 months ago