increased precision of the channel mixer (allow 1 decimal figure)

This commit is contained in:
Alberto Griggio
2018-06-15 14:16:37 +02:00
parent 99caa76f75
commit 93d442f802
4 changed files with 52 additions and 37 deletions

View File

@@ -2255,15 +2255,15 @@ void ImProcFunctions::rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer
float Balan = float (params->colorToning.balance);
float chMixRR = float (params->chmixer.red[0]);
float chMixRG = float (params->chmixer.red[1]);
float chMixRB = float (params->chmixer.red[2]);
float chMixGR = float (params->chmixer.green[0]);
float chMixGG = float (params->chmixer.green[1]);
float chMixGB = float (params->chmixer.green[2]);
float chMixBR = float (params->chmixer.blue[0]);
float chMixBG = float (params->chmixer.blue[1]);
float chMixBB = float (params->chmixer.blue[2]);
float chMixRR = float (params->chmixer.red[0])/10.f;
float chMixRG = float (params->chmixer.red[1])/10.f;
float chMixRB = float (params->chmixer.red[2])/10.f;
float chMixGR = float (params->chmixer.green[0])/10.f;
float chMixGG = float (params->chmixer.green[1])/10.f;
float chMixGB = float (params->chmixer.green[2])/10.f;
float chMixBR = float (params->chmixer.blue[0])/10.f;
float chMixBG = float (params->chmixer.blue[1])/10.f;
float chMixBB = float (params->chmixer.blue[2])/10.f;
bool blackwhite = params->blackwhite.enabled;
bool complem = params->blackwhite.enabledcc;

View File

@@ -1787,19 +1787,19 @@ bool VignettingParams::operator !=(const VignettingParams& other) const
ChannelMixerParams::ChannelMixerParams() :
enabled(false),
red{
100,
1000,
0,
0
},
green{
0,
100,
1000,
0
},
blue{
0,
0,
100
1000
}
{
}
@@ -3523,6 +3523,13 @@ int ProcParams::load(const Glib::ustring& fname, ParamsEdited* pedited)
memcpy (chmixer.green, gmix.data(), 3 * sizeof (int));
memcpy (chmixer.blue, bmix.data(), 3 * sizeof (int));
}
if (ppVersion < 338) {
for (int i = 0; i < 3; ++i) {
chmixer.red[i] *= 10;
chmixer.green[i] *= 10;
chmixer.blue[i] *= 10;
}
}
if (pedited) {
pedited->chmixer.red[0] = pedited->chmixer.red[1] = pedited->chmixer.red[2] = true;