FastLED 3.9.15
Loading...
Searching...
No Matches

◆ calculate_oscillators()

void animartrix_detail::ANIMartRIX::calculate_oscillators ( oscillators & timings)
inline

Definition at line 307 of file animartrix_detail.hpp.

307 {
308
309 double runtime = getTime() * timings.master_speed *
310 speed_factor; // global anaimation speed
311
312 for (int i = 0; i < num_oscillators; i++) {
313
314 move.linear[i] = (runtime + timings.offset[i]) *
315 timings.ratio[i]; // continously rising offsets,
316 // returns 0 to max_float
317
318 move.radial[i] = fmodf(move.linear[i],
319 2 * PI); // angle offsets for continous
320 // rotation, returns 0 to 2 * PI
321
322 move.directional[i] =
323 FL_SIN_F(move.radial[i]); // directional offsets or factors, returns
324 // -1 to 1
325
326 move.noise_angle[i] =
327 PI *
328 (1 +
329 pnoise(move.linear[i], 0,
330 0)); // noise based angle offset, returns 0 to 2 * PI
331 }
332 }
#define FL_SIN_F(x)
#define num_oscillators
float pnoise(float x, float y, float z)
#define PI
Definition math_macros.h:97

References FL_SIN_F, getTime(), move, num_oscillators, PI, pnoise(), speed_factor, and timings.

Referenced by Big_Caleido(), Caleido1(), Caleido2(), Caleido3(), Center_Field(), Chasing_Spirals(), Complex_Kaleido(), Complex_Kaleido_2(), Complex_Kaleido_3(), Complex_Kaleido_4(), Complex_Kaleido_5(), Complex_Kaleido_6(), Distance_Experiment(), Lava1(), Module_Experiment1(), Module_Experiment10(), Module_Experiment2(), Module_Experiment3(), Module_Experiment4(), Module_Experiment5(), Module_Experiment6(), Module_Experiment7(), Module_Experiment8(), Module_Experiment9(), Parametric_Water(), Polar_Waves(), RGB_Blobs(), RGB_Blobs2(), RGB_Blobs3(), RGB_Blobs4(), RGB_Blobs5(), Rings(), Rotating_Blob(), run_default_oscillators(), Scaledemo1(), Slow_Fade(), SM1(), SM10(), SM2(), SM3(), SM4(), SM5(), SM6(), SM8(), SM9(), Spiralus(), Spiralus2(), Water(), Waves(), Yves(), Zoom(), and Zoom2().

+ Here is the call graph for this function: