2019-09-25 16:11:03 +00:00
|
|
|
#pragma once
|
2019-05-29 22:49:54 +00:00
|
|
|
|
|
|
|
#include "prototypes.h"
|
|
|
|
#include "functions.h"
|
|
|
|
#include "Effect.h"
|
|
|
|
|
|
|
|
class Sinematrix3Effect : public Effect {
|
2019-06-07 04:24:16 +00:00
|
|
|
private:
|
2019-05-29 22:49:54 +00:00
|
|
|
double pangle = 0;
|
|
|
|
double angle = 0;
|
|
|
|
double sx = 0;
|
|
|
|
double sy = 0;
|
|
|
|
double tx = 0;
|
|
|
|
double ty = 0;
|
|
|
|
double cx = 0;
|
|
|
|
double cy = 0;
|
|
|
|
double rcx = 0;
|
|
|
|
double rcy = 0;
|
|
|
|
double angle2 = 0;
|
|
|
|
double sx2 = 0;
|
|
|
|
double sy2 = 0;
|
|
|
|
double tx2 = 0;
|
|
|
|
double ty2 = 0;
|
|
|
|
double basecol = 0;
|
|
|
|
double fx = 1.0 / (LED_WIDTH / PI);
|
|
|
|
double fy = 1.0 / (LED_HEIGHT / PI);
|
|
|
|
Matrix rotate;
|
|
|
|
|
2019-06-07 04:24:16 +00:00
|
|
|
public:
|
2019-05-29 22:49:54 +00:00
|
|
|
boolean supports_window = true;
|
|
|
|
boolean can_be_shown_with_clock();
|
|
|
|
boolean clock_as_mask();
|
2019-10-01 04:29:32 +00:00
|
|
|
void loop(uint16_t ms);
|
2019-09-25 16:11:03 +00:00
|
|
|
String get_name() override { return "sinematrix3"; }
|
2019-05-29 22:49:54 +00:00
|
|
|
};
|
|
|
|
|