fixed behaviour of "WB off" for non-raw images
This commit is contained in:
@@ -137,9 +137,13 @@ void Image16::getStdImage (ColorTemp ctemp, int tran, Imagefloat* image, Preview
|
|||||||
{
|
{
|
||||||
|
|
||||||
// compute channel multipliers
|
// compute channel multipliers
|
||||||
|
float rm = 1.f, gm = 1.f, bm = 1.f;
|
||||||
|
if (ctemp.getTemp() >= 0) {
|
||||||
double drm, dgm, dbm;
|
double drm, dgm, dbm;
|
||||||
ctemp.getMultipliers (drm, dgm, dbm);
|
ctemp.getMultipliers (drm, dgm, dbm);
|
||||||
float rm = drm, gm = dgm, bm = dbm;
|
rm = drm;
|
||||||
|
gm = dgm;
|
||||||
|
bm = dbm;
|
||||||
|
|
||||||
rm = 1.0 / rm;
|
rm = 1.0 / rm;
|
||||||
gm = 1.0 / gm;
|
gm = 1.0 / gm;
|
||||||
@@ -148,6 +152,7 @@ void Image16::getStdImage (ColorTemp ctemp, int tran, Imagefloat* image, Preview
|
|||||||
rm /= mul_lum;
|
rm /= mul_lum;
|
||||||
gm /= mul_lum;
|
gm /= mul_lum;
|
||||||
bm /= mul_lum;
|
bm /= mul_lum;
|
||||||
|
}
|
||||||
|
|
||||||
int sx1, sy1, sx2, sy2;
|
int sx1, sy1, sx2, sy2;
|
||||||
|
|
||||||
|
@@ -97,9 +97,13 @@ Image8* Image8::copy ()
|
|||||||
void Image8::getStdImage (ColorTemp ctemp, int tran, Imagefloat* image, PreviewProps pp, bool first, procparams::ToneCurveParams hrp)
|
void Image8::getStdImage (ColorTemp ctemp, int tran, Imagefloat* image, PreviewProps pp, bool first, procparams::ToneCurveParams hrp)
|
||||||
{
|
{
|
||||||
// compute channel multipliers
|
// compute channel multipliers
|
||||||
|
float rm = 1.f, gm = 1.f, bm = 1.f;
|
||||||
|
if (ctemp.getTemp() >= 0) {
|
||||||
double drm, dgm, dbm;
|
double drm, dgm, dbm;
|
||||||
ctemp.getMultipliers (drm, dgm, dbm);
|
ctemp.getMultipliers (drm, dgm, dbm);
|
||||||
float rm = drm, gm = dgm, bm = dbm;
|
rm = drm;
|
||||||
|
gm = dgm;
|
||||||
|
bm = dbm;
|
||||||
|
|
||||||
rm = 1.0 / rm;
|
rm = 1.0 / rm;
|
||||||
gm = 1.0 / gm;
|
gm = 1.0 / gm;
|
||||||
@@ -108,6 +112,7 @@ void Image8::getStdImage (ColorTemp ctemp, int tran, Imagefloat* image, PreviewP
|
|||||||
rm /= mul_lum;
|
rm /= mul_lum;
|
||||||
gm /= mul_lum;
|
gm /= mul_lum;
|
||||||
bm /= mul_lum;
|
bm /= mul_lum;
|
||||||
|
}
|
||||||
|
|
||||||
int sx1, sy1, sx2, sy2;
|
int sx1, sy1, sx2, sy2;
|
||||||
|
|
||||||
|
@@ -175,9 +175,13 @@ void Imagefloat::getStdImage (ColorTemp ctemp, int tran, Imagefloat* image, Prev
|
|||||||
{
|
{
|
||||||
|
|
||||||
// compute channel multipliers
|
// compute channel multipliers
|
||||||
|
float rm = 1.f, gm = 1.f, bm = 1.f;
|
||||||
|
if (ctemp.getTemp() >= 0) {
|
||||||
double drm, dgm, dbm;
|
double drm, dgm, dbm;
|
||||||
ctemp.getMultipliers (drm, dgm, dbm);
|
ctemp.getMultipliers (drm, dgm, dbm);
|
||||||
float rm = drm, gm = dgm, bm = dbm;
|
rm = drm;
|
||||||
|
gm = dgm;
|
||||||
|
bm = dbm;
|
||||||
|
|
||||||
rm = 1.0 / rm;
|
rm = 1.0 / rm;
|
||||||
gm = 1.0 / gm;
|
gm = 1.0 / gm;
|
||||||
@@ -186,6 +190,7 @@ void Imagefloat::getStdImage (ColorTemp ctemp, int tran, Imagefloat* image, Prev
|
|||||||
rm /= mul_lum;
|
rm /= mul_lum;
|
||||||
gm /= mul_lum;
|
gm /= mul_lum;
|
||||||
bm /= mul_lum;
|
bm /= mul_lum;
|
||||||
|
}
|
||||||
|
|
||||||
int sx1, sy1, sx2, sy2;
|
int sx1, sy1, sx2, sy2;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user