jfjoch_viewer: Single green color map

This commit is contained in:
2026-01-31 21:39:53 +01:00
parent 0a6ade81fa
commit fd512fa941
4 changed files with 7 additions and 28 deletions
+1 -1
View File
@@ -882,7 +882,7 @@ ColorScaleEnum ConvertColorScale(const std::optional<std::string> &input) {
if (color == "wb")
return ColorScaleEnum::WB;
if (color == "green")
return ColorScaleEnum::Green3;
return ColorScaleEnum::Green;
if (color == "heat")
return ColorScaleEnum::Heat;
if (color == "indigo")
+4 -21
View File
@@ -54,11 +54,7 @@ void ColorScale::CalcLUT() const {
break;
case ColorScaleEnum::WB: map = &black_to_white_colormap;
break;
case ColorScaleEnum::Green1:
case ColorScaleEnum::Green2:
map = nullptr;
break; // handled below
case ColorScaleEnum::Green3:
case ColorScaleEnum::Green:
map = &green_colormap;
break;
case ColorScaleEnum::Magma:
@@ -70,23 +66,10 @@ void ColorScale::CalcLUT() const {
"Color scale unknown");
}
if (current == ColorScaleEnum::Green1) {
for (size_t i = 0; i < kLutSize; ++i) {
const float f = static_cast<float>(i) / static_cast<float>(kLutSize - 1);
lut_[i] = GreenGamma(f, 0.7f);
}
} else if (current == ColorScaleEnum::Green2) {
for (size_t i = 0; i < kLutSize; ++i) {
const float f = static_cast<float>(i) / static_cast<float>(kLutSize - 1);
lut_[i] = GreenAsinh(f, 8.0f);
}
} else {
for (size_t i = 0; i < kLutSize; ++i) {
const float f = static_cast<float>(i) / static_cast<float>(kLutSize - 1);
lut_[i] = Apply(f, *map);
}
for (size_t i = 0; i < kLutSize; ++i) {
const float f = static_cast<float>(i) / static_cast<float>(kLutSize - 1);
lut_[i] = Apply(f, *map);
}
}
rgb ColorScale::Apply(float input, const std::vector<rgb> &map) {
+1 -3
View File
@@ -25,9 +25,7 @@ enum class ColorScaleEnum : int {
Heat = 4,
BW = 5,
WB = 6,
Green1 = 7,
Green2 = 8,
Green3 = 9
Green = 7
};
enum class ColorScaleSpecial {
@@ -29,9 +29,7 @@ JFJochViewerToolbarDisplay::JFJochViewerToolbarDisplay(QWidget *parent)
color_map_select->addItem("Heat", static_cast<int>(ColorScaleEnum::Heat));
color_map_select->addItem("Black on white", static_cast<int>(ColorScaleEnum::BW));
color_map_select->addItem("White on black", static_cast<int>(ColorScaleEnum::WB));
color_map_select->addItem("Green (gamma)", static_cast<int>(ColorScaleEnum::Green1));
color_map_select->addItem("Green (asinh)", static_cast<int>(ColorScaleEnum::Green2));
color_map_select->addItem("Green (linear)", static_cast<int>(ColorScaleEnum::Green3));
color_map_select->addItem("Green", static_cast<int>(ColorScaleEnum::Green));
color_map_select->setCurrentIndex(static_cast<int>(ColorScaleEnum::Indigo));
addWidget(color_map_select);