From adf6dece207c438b81d89a67893b241f83e8154b Mon Sep 17 00:00:00 2001 From: LordGrey Date: Sun, 29 Jan 2023 22:25:21 +0100 Subject: [PATCH] Test with fixed initial colors --- include/hyperion/ImageToLedsMap.h | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/include/hyperion/ImageToLedsMap.h b/include/hyperion/ImageToLedsMap.h index f7977f01..82e7db40 100644 --- a/include/hyperion/ImageToLedsMap.h +++ b/include/hyperion/ImageToLedsMap.h @@ -524,13 +524,28 @@ namespace hyperion ColorCluster clusters[CLUSTER_COUNT]; // initial cluster colors - for(int k = 0; k < CLUSTER_COUNT; ++k) - { - int randomRed = rand() % static_cast(256); - int randomGreen = rand() % static_cast(256); - int randomBlue = rand() % static_cast(256); + switch (CLUSTER_COUNT) { + case 4: + clusters[4].newColor = ColorRgbScalar(ColorRgb::YELLOW); + case 3: + clusters[3].newColor = ColorRgbScalar(ColorRgb::RED); + case 2: + clusters[2].newColor = ColorRgbScalar(ColorRgb::WHITE); + case 1: + clusters[1].newColor = ColorRgbScalar(ColorRgb::GREEN); + case 0: + clusters[0].newColor = ColorRgbScalar(ColorRgb::BLACK); + break; + default: + for(int k = 0; k < CLUSTER_COUNT; ++k) + { + int randomRed = rand() % static_cast(256); + int randomGreen = rand() % static_cast(256); + int randomBlue = rand() % static_cast(256); - clusters[k].newColor = ColorRgbScalar(randomRed, randomGreen, randomBlue); + clusters[k].newColor = ColorRgbScalar(randomRed, randomGreen, randomBlue); + } + break; } // k-means