42String
Menu::line1 =
" BRIGHT SDE BRIGHT MIC MIC LEVEL BOOP SPEC SIZE COLOR HUE F HUE B EFFECT FAN SPEED ";
43String
Menu::line2 =
" a b c d e f 12^45 12^45 ON off 123456|8 on OFF ON off 12^45 123456|8 123456|8 123456|8 123456|8 123456|8 ";
114#ifndef NEOTRELLISMENU
122#ifndef NEOTRELLISMENU
209#if defined NEOTRELLISMENU || defined MORSEBUTTON
214 float menuTarget = 0.0f;
323 uint8_t spacing = options >= 5 ? 3 : (
menuLength - options) / 2;
325 for (uint8_t i = 0; i < spacing; i++) {
329 for (uint8_t i = 0; i < 5; i++) {
330 if (selection < 5 && i < options) {
331 char value =
'0' + i;
333 if (i == selection) {
338 }
else if (selection >= 5 && i + 5 < options) {
339 char value =
'5' + i;
341 if (i + 5 == selection) {
void AddParameter(float *parameter)
Adds a parameter to the animation track.
void RestartTime()
Restarts the animation track's time to the beginning.
float Update()
Updates the animation track and returns the current parameter value.
Abstract base class for representing a color with operations for modification and interpolation.
Simulates the motion of a damped spring.
float Calculate(float target, unsigned long currentMillis)
Calculates the spring's position and velocity using a target position and timestamp.
void SetConstants(float springConstant, float damping)
Sets the spring constant and damping coefficient.
A template class for animating effect transitions using keyframes.
Abstract base class for applying visual effects to pixel groups.
void SetRatio(float ratio)
Sets the scaling ratio for the effect.
Implements a fisheye distortion effect for pixel groups.
Implements a glitch effect along the X-axis for pixel groups.
Implements a horizontal blur effect for pixel groups.
Implements a magnetic distortion effect for pixel groups.
Abstract base class for rendering materials.
static const float MPI
Mathematical constant (3.14159265358979323846...).
Manages multiple menus and settings using Adafruit NeoTrellis.
static void SetInitialized()
Marks the menu system as initialized.
static void SetMenuMax(uint8_t menu, uint8_t maxValue)
Sets the maximum value for a specific menu.
static void Update()
Updates the menu state and processes user interactions.
static uint8_t GetMenuValue(uint8_t menu)
Retrieves the current value of a specific menu.
static void Begin()
Begins the menu handling process, setting up necessary states.
static uint8_t GetCurrentMenu()
Retrieves the index of the currently active menu.
static void SetDefaultValue(uint16_t menu, uint8_t value)
Sets a default value for a specific menu.
Implements an overflow distortion effect for pixel groups.
A no-operation effect that leaves pixel groups unchanged.
Applies rotational phase offsets to pixel groups.
Applies horizontal phase offsets to pixel groups.
Applies vertical phase offsets to pixel groups.
Applies a radial blur effect to pixel groups.
A dynamic material that creates a rainbow effect using simplex noise.
void Update(float ratio)
Updates the material animation based on the time ratio.
Radially shifts the red, green, and blue channels of the pixels.
void SetPositionOffset(Vector2D positionOffset)
void SetRotationAngle(float rotationAngle)
void SetRotationOffset(Vector2D rotationOffset)
void SetSize(Vector2D size)
void SetMaterial(Material *material)
void SetBlinkTime(uint16_t blinkTime)
void SetText(uint8_t line, String value, bool centerText=false)
Represents a 2D vector (X, Y) and provides methods for vector arithmetic.
float X
The X-component of the 2D vector.
An effect that applies a vertical blur to a pixel group.