Add C=f(C) curve and fixed some bugs

This commit is contained in:
Desmis
2017-01-23 13:06:10 +01:00
parent 3ecf01c713
commit 9e1b9f7c19
19 changed files with 733 additions and 266 deletions

View File

@@ -429,6 +429,24 @@ void CurveFactory::curveLocal (bool & locallutili, const std::vector<double>& cu
}
void CurveFactory::curveCCLocal (bool & localcutili, const std::vector<double>& curvePoints, LUTf & LocalCCurve, int skip)
{
bool needed = false;
std::unique_ptr<DiagonalCurve> dCurve;
if (!curvePoints.empty() && curvePoints[0] != 0) {
dCurve = std::unique_ptr<DiagonalCurve> (new DiagonalCurve (curvePoints, CURVES_MIN_POLY_POINTS / skip));
if (dCurve && !dCurve->isIdentity()) {
needed = true;
localcutili = true;
}
}
fillCurveArray (dCurve.get(), LocalCCurve, skip, needed);
//LocalLCurve.dump("wav");
}
void CurveFactory::localLCurve (double br, double contr, /*const std::vector<double>& curvePoints,*/