Esempio n. 1
0
void Strobe::upanddown() {
	for (int i = 0; i < numLedsProBar; i++) {
		pliste[i].set(false, color, colors[color].a, colors[color].b,
				colors[color].c);
	}

	if (strobecounter % (speed) == 0)
		switchcounter++;

	if (strobecounter % (speed) < 3) {
		if (updownpos < 1) {
			updownpos = 1;
			updown = true;
		}

		if (updownpos > numLedsProBar - 2) {
			updownpos = numLedsProBar - 2;
			updown = false;
		}
		pliste[updownpos - 1].active = true;
		pliste[updownpos + 1].active = true;
		pliste[updownpos].active = true;
		drawEqual();
		if (updown) {
			updownpos++;
		} else {
			updownpos--;
		}
	}
}
Esempio n. 2
0
void Balls::explodingND() {

	if (counter == 0) {
		pliste[numLedsProBar / 2].active = true;
		pliste[numLedsProBar / 2].color = color;
		pliste[numLedsProBar / 2 - 1].active = true;
		pliste[numLedsProBar / 2 - 1].color = color;
		for (int i = numLedsProBar / 2 + 1; i < numLedsProBar - 1; i++) {
			pliste[i].active = false;
			pliste[i].color = color;
			pliste[numLedsProBar / 2 - 1 - i].active = false;
			pliste[numLedsProBar / 2 - 1 - i].color = color;
		}
	}
	pixel old, act;
	if (counter % (int) ((double) targetCycles / (numLedsProBar / 2)) == 0
			&& counter > 1) {
		old = pliste[numLedsProBar / 2];
		for (int i = 1; i < numLedsProBar / 2; i++) {
			act = pliste[numLedsProBar / 2 + i];

			pliste[numLedsProBar / 2 + i] = old;
			pliste[numLedsProBar / 2 - 1 - i] = old;
			old = act;

		}

	}
	drawEqual();
}
Esempio n. 3
0
void Balls::imploding() {
	if (counter == 0) {
		pliste[0].active = true;
		pliste[0].color = color;
		pliste[numLedsProBar - 1].active = true;
		pliste[numLedsProBar - 1].color = color;
	}
	pixel old, act;
	if (counter % ((int) (speed)) == 0) {
		old = pliste[0];

		pliste[0].active = false;
		pliste[numLedsProBar - 1].active = false;
		for (int i = 1; i < numLedsProBar / 2; i++) {
			act = pliste[i];

			pliste[i] = old;
			pliste[numLedsProBar - 1 - i] = old;
			old = act;

		}

	}
	drawEqual();
}
Esempio n. 4
0
void Strobe::standard() {
	for (int i = 0; i < numLedsProBar; i++) {
		pliste[i].set(false, color, colors[color].a, colors[color].b,
				colors[color].c);
	}

	if (strobecounter % (speed) < 3) {
		for (int i = 0; i < numLedsProBar; i++) {
			pliste[i].active = true;
		}
	}
	drawEqual();
}
Esempio n. 5
0
 void ChunkBar::drawBarContents(QPainter* p)
 {
     Uint32 w = contentsRect().width();
     const BitSet& bs = getBitSet();
     curr = bs;
     QColor highlight_color = palette().color(QPalette::Active, QPalette::Highlight);
     if (bs.allOn())
         drawAllOn(p, highlight_color, contentsRect());
     else if (curr.getNumBits() > w)
         drawMoreChunksThenPixels(p, bs, highlight_color, contentsRect());
     else
         drawEqual(p, bs, highlight_color, contentsRect());
 }
Esempio n. 6
0
void Balls::spring() {
	int pos;
	for (int i = 0; i < numLedsProBar; i++) {
		pliste[i].active = false;
	}
	if (counter == 0) {
		for (int i = 0; i < numLedsProBar; i++) {
			pliste[i].set(false, color, colors[color].a, colors[color].b,
					colors[color].c);
		}
		springAmps[0] = numLedsProBar / 2 * 0.7 * power;
		if (springAmps[0] > numLedsProBar / 2 - 1)
			springAmps[0] = numLedsProBar / 2 - 1;
		springAmps[1] = (-1) * numLedsProBar / 2 * 4 / 5;
		springAmps[2] = numLedsProBar / 2 * 3 / 5;
		springAmps[3] = (-1) * numLedsProBar / 2 * 2 / 5;
		springAmps[4] = numLedsProBar / 2 * 1 / 5;
	}
	if (counter < targetCycles / 5) {
		pos = linearAppPM(springAmps[0], springAmps[1], targetCycles / 5,
				counter % (targetCycles / 5));
		pliste[numLedsProBar / 2 + pos].active = true;
		//cout << pos << endl;
	}
	if (counter > targetCycles / 5 && counter < 2 * targetCycles / 5) {
		pos = linearAppPM(springAmps[1], springAmps[2], targetCycles / 5,
				counter % (targetCycles / 5));
		pliste[numLedsProBar / 2 + pos].active = true;
		//cout << pos << endl;
	}
	if (counter > 2 * targetCycles / 5 && counter < 3 * targetCycles / 5) {
		pos = linearAppPM(springAmps[2], springAmps[3], targetCycles / 5,
				counter % (targetCycles / 5));
		pliste[numLedsProBar / 2 + pos].active = true;
		//cout << pos << endl;
	}
	if (counter > 3 * targetCycles / 5 && counter < 4 * targetCycles / 5) {
		pos = linearAppPM(springAmps[3], springAmps[4], targetCycles / 5,
				counter % (targetCycles / 5));
		pliste[numLedsProBar / 2 + pos].active = true;
		//cout << pos << endl;
	}
	if (counter > 4 * targetCycles / 5 && counter < 5 * targetCycles / 5) {
		pos = linearAppPM(springAmps[4], 0, targetCycles / 5,
				counter % (targetCycles / 5));
		pliste[numLedsProBar / 2 + pos].active = true;
		//cout << pos << endl;
	}
	drawEqual();

}
Esempio n. 7
0
void Strobe::upperhalf() {
	for (int i = 0; i < numLedsProBar; i++) {
		pliste[i].set(false, color, colors[color].a, colors[color].b,
				colors[color].c);
	}

	if (strobecounter % (speed) == 0)
		switchcounter++;

	if (strobecounter % (speed) < 3) {
		for (int i = numLedsProBar / 2; i < numLedsProBar; i++) {
			pliste[i].active = true;
		}
		drawEqual();
	}
}
Esempio n. 8
0
void Balls::risingND() {
	//cout << speed << endl;
	if (counter == 0) {
		pliste[0].active = true;
		pliste[0].color = color;
	}
	pixel old, act;
	if (counter % ((int) (speed)) == 0) {
		old = pliste[0];
		//pliste[0].active = false;
		for (int i = 1; i < numLedsProBar; i++) {
			act = pliste[i];
			pliste[i] = old;
			old = act;
		}

	}
	drawEqual();
}
Esempio n. 9
0
void Balls::fallingND() {
	if (counter == 0) {
		pliste[numLedsProBar - 1].active = true;
		pliste[numLedsProBar - 1].color = color;
	}
	pixel old, act;
	if (counter % ((int) (speed)) == 0) {
		old = pliste[numLedsProBar - 1];

		//pliste[numLedsProBar - 1].active = false;
		for (int i = numLedsProBar - 2; i >= 0; i--) {
			act = pliste[i];

			pliste[i] = old;

			old = act;
		}

	}
	drawEqual();
}
Esempio n. 10
0
void Strobe::random() {
	for (int i = 0; i < numLedsProBar; i++) {
		pliste[i].set(false, color, colors[color].a, colors[color].b,
				colors[color].c);
	}

	if (strobecounter % (speed) == 0)
	{
		pos[0] = ((double)rand() / RAND_MAX) * (numBars*numLedsProBar -1);
		pos[1] = ((double)rand() / RAND_MAX) * (numBars*numLedsProBar -1);
		pos[2] = ((double)rand() / RAND_MAX) * (numBars*numLedsProBar -1);
		//cout << pos[0] << " " << pos[1] << " " << pos[2] << endl;
	}

	if (strobecounter % (speed) < 3) {
		ledscape_set_color(frame,
									color_channel_order_from_string(ColorOrder),targetStrip,
									pos[0],
									colors[color].a,
									colors[color].b,
									colors[color].c);
		ledscape_set_color(frame,
											color_channel_order_from_string(ColorOrder),targetStrip,
											pos[1],
											colors[color].a,
											colors[color].b,
											colors[color].c);
		ledscape_set_color(frame,
											color_channel_order_from_string(ColorOrder),targetStrip,
											pos[2],
											colors[color].a,
											colors[color].b,
											colors[color].c);
		drawEqual();
	}
}