It's working now! And looks quite nice.

This commit is contained in:
2021-01-04 12:44:41 +01:00
parent 4092306eb1
commit 43916c3b78
6 changed files with 74 additions and 36 deletions

View File

@ -9,10 +9,12 @@
std::list<Node*> nodes;
std::list<Edge*> edges;
std::list<Corner*> corners;
std::vector<Corner*> corners;
CRGB leds[LED_COUNT];
bool looping;
void setup_layout() {
LOGln("Setting up layout...");
uint8_t layout[] = LAYOUT;
@ -31,12 +33,12 @@ void setup_layout() {
edges.push_back(edge);
}
}
for(Corner* corner: node->corners) {
/*for(Corner* corner: node->corners) {
auto c = std::find(corners.begin(), corners.end(), corner);
if (c == corners.end()) {
corners.push_back(corner);
}
}
}*/
}
for(Corner* corner: corners) {
@ -71,25 +73,23 @@ void setup() {
setup_layout();
setup_fastled();
LOGln("corners.size(): %d", corners.size());
uint16_t cid = random16(corners.size());
LOGln("cid: %d", cid);
auto i = corners.begin();
for(int j=0; j<cid; j++) {
i++;
}
Corner* start = *i;
LOGln("start: %p", start);
start->blend_to(CRGB(0xFF0000));
}
void loop() {
// put your main code here, to run repeatedly:
EVERY_N_MILLISECONDS(20) {
looping = false;
for(Corner* corner: corners) {
corner->loop();
looping = corner->loop() || looping;
}
FastLED.show();
if (!looping) {
LOGln("corners.size(): %d", corners.size());
uint16_t cid = random16(corners.size());
LOGln("cid: %d", cid);
Corner* start = corners[cid];
start->blend_to(CHSV(random8(), 255, 255));
}
}
}