Program Listing for File blinkanimation.cpp¶
↰ Return to documentation for file (src/animation/blinkanimation.cpp
)
#include "blinkanimation.h"
namespace PixelMaestro {
BlinkAnimation::BlinkAnimation(Section& section) : Animation(section) {
type_ = AnimationType::Blink;
map();
}
void BlinkAnimation::map() {
// Alternate the Pixel between its normal color and off.
if (cycle_index_ == 0) {
if (orientation_ == Orientation::Vertical || orientation_ == Orientation::VerticalFlipped) {
for (uint16_t x = 0; x < section_.get_dimensions().x; x++) {
for (uint16_t y = 0; y < section_.get_dimensions().y; y++) {
set_map_color_index(x, y, y);
}
}
}
else { // Horizontal
for (uint16_t y = 0; y < section_.get_dimensions().y; y++) {
for (uint16_t x = 0; x < section_.get_dimensions().x; x++) {
set_map_color_index(x, y, x);
}
}
}
}
else {
for (uint16_t x = 0; x < section_.get_dimensions().x; x++) {
for (uint16_t y = 0; y < section_.get_dimensions().y; y++) {
set_map_color_index(x, y, 255);
}
}
}
}
void BlinkAnimation::update() {
map();
update_cycle(0, 2);
}
}