1 /* 2 * lissajous.h 3 * DIN Is Noise is copyright (c) 2006-2021 Jagannathan Sampath 4 * DIN Is Noise is released under GNU Public License 2.0 5 * For more information, please visit https://dinisnoise.org/ 6 */ 7 8 9 #ifndef __lissajous 10 #define __lissajous 11 12 #include "spinner.h" 13 #include "plugin.h" 14 15 struct lissajous : plugin { 16 17 point<float> center; 18 point<float> speed; 19 20 int num_points; 21 22 float theta; 23 float dtheta; 24 25 struct { 26 struct { 27 spinner<float> x, y; 28 } speed; 29 struct { 30 spinner<float> start, end; 31 } angle; 32 spinner<int> num_points; 33 } sp; 34 35 struct { 36 float start, end; 37 } angle; 38 39 lissajous (); 40 ~lissajous (); 41 void load_params (); 42 void save_params (); 43 44 void setup (); 45 void render (); 46 47 }; 48 49 #endif 50