FastLED 3.9.15
Loading...
Searching...
No Matches
flowfield.h File Reference

Detailed Description

2D flow field visualization: emitters paint color, noise advects it

Definition in file flowfield.h.

#include "fl/stl/stdint.h"
#include "crgb.h"
#include "fl/math/filter/filter.h"
#include "fl/math/math.h"
#include "fl/stl/shared_ptr.h"
#include "fl/fx/fx2d.h"
#include "fl/fx/time.h"
#include "fl/math/xymap.h"
#include "fl/stl/align.h"
#include "fl/stl/vector.h"
#include "fl/math/fixed_point/s16x16.h"
#include "fl/stl/noexcept.h"
+ Include dependency graph for flowfield.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  fl::FlowField
 Abstract base class for 2D flow field effects. More...
 
class  fl::FlowFieldFloat
 Float-precision flow field implementation. More...
 
class  fl::FlowFieldFloat::Perlin2D
 
class  fl::FlowFieldFP
 Pure fixed-point (s16x16) flow field implementation for maximum speed. More...
 
struct  fl::FlowFieldFPState
 SoA (Structure-of-Arrays) state for FlowFieldFP. More...
 
struct  fl::FlowFieldParams
 Configuration parameters for FlowField. More...
 
class  fl::NoiseBias1D
 Per-position attack/decay bias for one axis. More...
 
class  fl::NoiseBias2D
 Two-axis attack/decay bias for 2D effects (per-column X + per-row Y). More...
 

Namespaces

namespace  fl
 Base definition for an LED controller.
 

Enumerations

enum class  fl::BumpShape : u8 { fl::HalfSine , fl::Gaussian }
 Shape function for NoiseBias triggers. More...
 

Functions

 fl::FASTLED_SHARED_PTR (FlowField)
 
 fl::FASTLED_SHARED_PTR (FlowFieldFloat)
 
 fl::FASTLED_SHARED_PTR (FlowFieldFP)
 

Class Documentation

◆ fl::FlowFieldParams

struct fl::FlowFieldParams
Class Members
float color_shift = 0.04f Color shift speed.
int dot_count = 3 Number of orbital dots.
int emitter_mode = 0 0=Lissajous, 1=Dots, 2=Both
float endpoint_speed = 0.80f Lissajous endpoint speed.
float flow_amp_x = 1.0f Flow amplitude X.
float flow_amp_y = 1.0f Flow amplitude Y.
float flow_shift = 1.8f Pixel shift amount.
float flow_speed_x = 0.10f Noise scroll speed X.
float flow_speed_y = 0.10f Noise scroll speed Y.
float noise_freq_x = 0.33f Noise frequency X.
float noise_freq_y = 0.32f Noise frequency Y.
float persistence = 0.86f Trail half-life in seconds.
bool reverse_x_profile = true Reverse X profile (matches Python)
bool show_flow_vectors = false Draw flow profiles as overlay.