Files
Renderive/YSGraphic_Core/architecture/Render_Utils.cpp
T
2026-07-24 10:54:44 +08:00

32 lines
1.0 KiB
C++

#include <QFile>
#include <sstream>
#include "Renderable_Core.h"
#include "psc_global_include/Fail_Fast.h"
#include "psc_global_include/export.h"
namespace YSG {
QVector<QRgb> get_turbo_color_gradient() {
QVector<QRgb> colors;
QFile file(":/turbo.colorMap");
if (!file.open(QIODevice::ReadOnly)) {
std::ostringstream oss;
oss << file.errorString().toStdString() << " getTurboColorGradient2: Failed to open file" << LOG_POS_SIMPLE << std::endl;
Psc::fail_fast(oss.str());
return colors;
}
QByteArray fileData = file.readAll();
file.close();
if (fileData.size() != 768) {
qDebug() << "getTurboColorGradient2: File size is not as expected (768 bytes), got" << fileData.size();
return colors;
}
colors.reserve(256);
for (int i = 0; i < 256; ++i) {
uchar r = fileData[i * 3];
uchar g = fileData[i * 3 + 1];
uchar b = fileData[i * 3 + 2];
colors.push_back(qRgb(r, g, b));
}
return colors;
}
} // namespace YSG