##// END OF EJS Templates
Reads variable's metadata to retrieve the type of data series (scalar, vector, spectrogram)
Reads variable's metadata to retrieve the type of data series (scalar, vector, spectrogram)

File last commit:

r584:17624d030c39
r1333:88939ef97b8f
Show More
ColorUtils.cpp
29 lines | 1.0 KiB | text/x-c | CppLexer
#include "Common/ColorUtils.h"
#include <QtGui/QColor>
std::vector<QColor> ColorUtils::colors(const QColor &minColor, const QColor &maxColor,
int nbColors) noexcept
{
auto result = std::vector<QColor>{};
if (nbColors == 1) {
result.push_back(minColor);
}
else if (nbColors > 0) {
const auto nbSteps = static_cast<double>(nbColors - 1);
const auto colorHStep = (maxColor.hue() - minColor.hue()) / nbSteps;
const auto colorSStep = (maxColor.saturation() - minColor.saturation()) / nbSteps;
const auto colorVStep = (maxColor.value() - minColor.value()) / nbSteps;
const auto colorAStep = (maxColor.alpha() - minColor.alpha()) / nbSteps;
for (auto i = 0; i < nbColors; ++i) {
result.push_back(QColor::fromHsv(
minColor.hue() + i * colorHStep, minColor.saturation() + i * colorSStep,
minColor.value() + i * colorVStep, minColor.alpha() + i * colorAStep));
}
}
return result;
}