mirror of
https://github.com/brmlab/ledbar.git
synced 2025-06-08 12:53:59 +02:00
add simple rainbow as well
This commit is contained in:
parent
4277c350fd
commit
b807bfb012
2 changed files with 13 additions and 2 deletions
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
ledbar
|
14
ledbar.c
14
ledbar.c
|
@ -40,6 +40,16 @@ void (*program)(int i, int t, double *r, double *g, double *b);
|
||||||
|
|
||||||
// rainbow
|
// rainbow
|
||||||
void programQ(int i, int t, double *r, double *g, double *b)
|
void programQ(int i, int t, double *r, double *g, double *b)
|
||||||
|
{
|
||||||
|
double index = 1.0*i/BOXES;
|
||||||
|
double time = 0.01*t;
|
||||||
|
*r = (sin(M_PI*2*index+time)+1.0)/2;
|
||||||
|
*g = (sin(M_PI*2*index+time+M_PI*2/3)+1.0)/2;
|
||||||
|
*b = (sin(M_PI*2*index+time+M_PI*4/3)+1.0)/2;
|
||||||
|
}
|
||||||
|
|
||||||
|
// rainbow with different speeds
|
||||||
|
void programW(int i, int t, double *r, double *g, double *b)
|
||||||
{
|
{
|
||||||
double index = 1.0*i/BOXES;
|
double index = 1.0*i/BOXES;
|
||||||
double time = 0.01*t;
|
double time = 0.01*t;
|
||||||
|
@ -48,9 +58,8 @@ void programQ(int i, int t, double *r, double *g, double *b)
|
||||||
*b = (sin(M_PI*2*index+time*1.618)+1.0)/2;
|
*b = (sin(M_PI*2*index+time*1.618)+1.0)/2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// knight rider
|
// knight rider
|
||||||
void programW(int i, int t, double *r, double *g, double *b)
|
void programE(int i, int t, double *r, double *g, double *b)
|
||||||
{
|
{
|
||||||
static float pos = BOXES/2;
|
static float pos = BOXES/2;
|
||||||
static float dir = 0.001;
|
static float dir = 0.001;
|
||||||
|
@ -113,6 +122,7 @@ int main(int argc, char* argv[])
|
||||||
switch(event.key.keysym.sym) {
|
switch(event.key.keysym.sym) {
|
||||||
case SDLK_q: program = programQ; break;
|
case SDLK_q: program = programQ; break;
|
||||||
case SDLK_w: program = programW; break;
|
case SDLK_w: program = programW; break;
|
||||||
|
case SDLK_e: program = programE; break;
|
||||||
case SDLK_ESCAPE: quit = 1; break;
|
case SDLK_ESCAPE: quit = 1; break;
|
||||||
default: break;
|
default: break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue