29 lines
837 B
C++
29 lines
837 B
C++
#pragma once
|
|
|
|
#include <VulcanoLE/Visual/VIZ.h>
|
|
|
|
namespace VIZ {
|
|
class RainbowLine : public VIZ {
|
|
int currentColumn = 0;
|
|
double deltaNeeded = 0.0;
|
|
double deltaElapsed = 0;
|
|
rgba *colours = nullptr;
|
|
int maxCols = 0;
|
|
double lastValue = 0;
|
|
double decayValue = 0;
|
|
double tailFactor = 0.5;
|
|
public:
|
|
RainbowLine(AudioGrabber *pGrabber, Vulcan121 *vulcan);
|
|
~RainbowLine() override;
|
|
void onSetup() override;
|
|
void onTick(float delta) override;
|
|
void calcNextDelta(double ratio);
|
|
const char *name() override;
|
|
std::string m_name = "Rainbow Line";
|
|
led_map data{};
|
|
bool firstUnder = true;
|
|
double deltaMove(double val);
|
|
void moveLine(double val, double d);
|
|
double factor = 1.0;
|
|
};
|
|
} |