Namespace containing configuration structures and enums for the Blob animation.
Definition blob_config.h:12
AnimationState
Defines the possible animation states for the blob.
Definition blob_config.h:16
@ kResizing
The blob is reacting to window resizing.
Definition blob_config.h:19
@ kIdle
The blob is stationary or exhibiting subtle idle animations.
Definition blob_config.h:17
@ kMoving
The blob is reacting to window movement (inertia).
Definition blob_config.h:18
Structure holding parameters related to the blob's visual appearance and basic geometry.
Definition blob_config.h:25
int num_of_points
The number of control points used to define the blob's shape.
Definition blob_config.h:29
int glow_radius
The radius/spread of the glow effect around the border in pixels.
Definition blob_config.h:33
int screen_height
The current height of the screen/widget area (used for border collisions, etc.).
Definition blob_config.h:45
int border_width
The width of the main borderline in pixels.
Definition blob_config.h:35
QColor background_color
The background color of the widget area.
Definition blob_config.h:37
int grid_spacing
The spacing between grid lines in pixels.
Definition blob_config.h:41
QColor border_color
The color of the blob's border and fill gradient base.
Definition blob_config.h:31
double blob_radius
The base radius of the blob shape in pixels.
Definition blob_config.h:27
QColor grid_color
The color of the grid lines drawn on the background.
Definition blob_config.h:39
int screen_width
The current width of the screen/widget area (used for border collisions, etc.).
Definition blob_config.h:43
Structure holding parameters specific to the Idle state animation.
Definition blob_config.h:73
double wave_phase
Current phase offset of the wave effect (updated over time).
Definition blob_config.h:79
double wave_amplitude
Amplitude (magnitude) of the wave effect applied in the Idle state.
Definition blob_config.h:75
double wave_frequency
Frequency (speed) of the wave effect applied in the Idle state.
Definition blob_config.h:77
Structure holding parameters controlling the physics simulation of the blob.
Definition blob_config.h:51
double max_speed
Maximum speed limit for individual control points (prevents instability).
Definition blob_config.h:59
double min_neighbor_distance
Minimum allowed distance between neighboring control points (relative to radius).
Definition blob_config.h:65
double viscosity
Resistance to internal deformation (higher values make it more rigid).
Definition blob_config.h:53
double stabilization_rate
Rate at which the blob returns to a more circular shape when idle (0.0 to 1.0).
Definition blob_config.h:63
double damping
Factor by which velocity is reduced each frame (0.0 to 1.0). Controls how quickly movement stops.
Definition blob_config.h:55
double restitution
Bounciness factor for border collisions (0.0 = no bounce, 1.0 = full bounce).
Definition blob_config.h:61
double velocity_threshold
Minimum velocity magnitude considered significant (used for state transitions).
Definition blob_config.h:57
double max_neighbor_distance
Maximum allowed distance between neighboring control points (relative to radius).
Definition blob_config.h:67