Fixed bugs in curves LH HH exposure
This commit is contained in:
@@ -1555,10 +1555,12 @@ void LocHHCurve::Set(const Curve &pCurve)
|
||||
|
||||
void LocHHCurve::Set(const std::vector<double> &curvePoints, bool &HHutili)
|
||||
{
|
||||
if (HHutili && !curvePoints.empty() && curvePoints[0] > FCT_Linear && curvePoints[0] < FCT_Unchanged) {
|
||||
// if (HHutili && !curvePoints.empty() && curvePoints[0] > FCT_Linear && curvePoints[0] < FCT_Unchanged) {
|
||||
if (!curvePoints.empty() && curvePoints[0] > FCT_Linear && curvePoints[0] < FCT_Unchanged) {
|
||||
FlatCurve ttcurve(curvePoints, false, CURVES_MIN_POLY_POINTS / 2);
|
||||
ttcurve.setIdentityValue(0.);
|
||||
Set(ttcurve);
|
||||
HHutili = true;
|
||||
} else {
|
||||
Reset();
|
||||
}
|
||||
@@ -1602,10 +1604,12 @@ void LocLHCurve::Set(const Curve &pCurve)
|
||||
void LocLHCurve::Set(const std::vector<double> &curvePoints, bool &LHutili)
|
||||
{
|
||||
|
||||
if (LHutili && !curvePoints.empty() && curvePoints[0] > FCT_Linear && curvePoints[0] < FCT_Unchanged) {
|
||||
if (!curvePoints.empty() && curvePoints[0] > FCT_Linear && curvePoints[0] < FCT_Unchanged) {
|
||||
// if (LHutili && !curvePoints.empty() && curvePoints[0] > FCT_Linear && curvePoints[0] < FCT_Unchanged) {
|
||||
FlatCurve tcurve(curvePoints, false, CURVES_MIN_POLY_POINTS / 2);
|
||||
tcurve.setIdentityValue(0.);
|
||||
Set(tcurve);
|
||||
LHutili = true;
|
||||
} else {
|
||||
Reset();
|
||||
}
|
||||
|
||||
@@ -1700,6 +1700,12 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
|
||||
}
|
||||
|
||||
locallutili = false;
|
||||
localexutili = false;
|
||||
localcutili = false;
|
||||
localskutili = false;
|
||||
|
||||
LHutili = false;
|
||||
HHutili = false;
|
||||
|
||||
}
|
||||
//******************************************************************
|
||||
@@ -2651,24 +2657,24 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
|
||||
std::string t_curvhhref = "1000A0B500C350D350E166F500G350H350I333J500K350L350M500N500O350P350Q666R500S350T350U833V500W350X350Y@";
|
||||
|
||||
if (lhstr[sp].c_str() != t_curvhhref) {
|
||||
LHutili = true;
|
||||
//LHutili = true;
|
||||
}
|
||||
|
||||
if (hhstr[sp].c_str() != t_curvhhref) {
|
||||
HHutili = true;
|
||||
// HHutili = true;
|
||||
}
|
||||
|
||||
std::string t_curvskinref = "3000A0B0C1000D1000E@";
|
||||
std::string t_none = "0A@";
|
||||
|
||||
if (skinstr[sp].c_str() != t_curvskinref && skinstr[sp].c_str() != t_none) {
|
||||
localskutili = true;
|
||||
// localskutili = true;
|
||||
}
|
||||
|
||||
std::string t_curvexref = "3000A0B0C1000D1000E@";
|
||||
|
||||
if (exstr[sp].c_str() != t_curvexref && exstr[sp].c_str() != t_none) {
|
||||
localexutili = true;
|
||||
// localexutili = true;
|
||||
}
|
||||
|
||||
params.locallab.getCurves(locRETgainCurve, locRETgainCurverab, loclhCurve, lochhCurve, LHutili, HHutili);
|
||||
@@ -2746,6 +2752,14 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
|
||||
params.locallab.lumaref = INFINITY;
|
||||
params.locallab.sobelref = INFINITY;
|
||||
locallutili = false;
|
||||
localexutili = false;
|
||||
// locallutili = false;
|
||||
localcutili = false;
|
||||
localskutili = false;
|
||||
// localexutili = false;
|
||||
|
||||
LHutili = false;
|
||||
HHutili = false;
|
||||
|
||||
sps[sp] = sp;
|
||||
dataspot[2][sp] = circrads[sp] = params.locallab.circrad = dataspot[2][0];
|
||||
@@ -3316,11 +3330,11 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
|
||||
std::string t_curvhhref2 = "1000A0B500C350D350E166F500G350H350I333J500K350L350M500N500O350P350Q666R500S350T350U833V500W350X350Y@";
|
||||
|
||||
if (hhstr[sp].c_str() != t_curvhhref2) {
|
||||
HHutili = true;
|
||||
// HHutili = true;
|
||||
}
|
||||
|
||||
if (lhstr[sp].c_str() != t_curvhhref2) {
|
||||
LHutili = true;
|
||||
// LHutili = true;
|
||||
}
|
||||
|
||||
params.locallab.getCurves(locRETgainCurve, locRETgainCurverab, loclhCurve, lochhCurve, LHutili, HHutili);
|
||||
@@ -3339,7 +3353,7 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
|
||||
std::string t_curvexref2 = "3000A0B0C1000D1000E@";
|
||||
|
||||
if (exstr[sp].c_str() != t_curvexref2 && exstr[sp].c_str() != t_none2) {
|
||||
localexutili = true;
|
||||
// localexutili = true;
|
||||
}
|
||||
|
||||
double br = 0.;
|
||||
|
||||
@@ -2119,11 +2119,11 @@ private:
|
||||
std::string t_curvhhref = "1000A0B500C350D350E166F500G350H350I333J500K350L350M500N500O350P350Q666R500S350T350U833V500W350X350Y@";
|
||||
|
||||
if (lhstrs[sp].c_str() != t_curvhhref) {
|
||||
LHutili = true;
|
||||
// LHutili = true;
|
||||
}
|
||||
|
||||
if (hhstrs[sp].c_str() != t_curvhhref) {
|
||||
HHutili = true;
|
||||
// HHutili = true;
|
||||
}
|
||||
|
||||
|
||||
@@ -2136,13 +2136,13 @@ private:
|
||||
std::string t_none = "0A@";
|
||||
|
||||
if (skinstrs[sp].c_str() != t_curvskinref && skinstrs[sp].c_str() != t_none) {
|
||||
localskutili = true;
|
||||
// localskutili = true;
|
||||
}
|
||||
|
||||
std::string t_curvexref = "3000A0B0C1000D1000E@";
|
||||
|
||||
if (exstrs[sp].c_str() != t_curvexref && exstrs[sp].c_str() != t_none) {
|
||||
localexutili = true;
|
||||
// localexutili = true;
|
||||
}
|
||||
|
||||
CurveFactory::curveLocal(locallutili, params.locallab.llcurve, lllocalcurve, 1);
|
||||
|
||||
Reference in New Issue
Block a user