Each section can be enabled for each RT-spot

This commit is contained in:
Desmis 2017-12-20 13:41:48 +01:00
parent 2c5e992504
commit 9a89228f4d
7 changed files with 678 additions and 14 deletions

View File

@ -1151,6 +1151,62 @@ void Crop::update(int todo)
params.locallab.noisechrodetail = parent->noisechrodetails[sp];
params.locallab.sensiden = parent->sensidens[sp];
if (parent->expdenois[sp] == 0) {
params.locallab.expdenoi = false;
} else {
params.locallab.expdenoi = true;
}
if (parent->expcolors[sp] == 0) {
params.locallab.expcolor = false;
} else {
params.locallab.expcolor = true;
}
if (parent->expvibrances[sp] == 0) {
params.locallab.expvibrance = false;
} else {
params.locallab.expvibrance = true;
}
if (parent->expblurs[sp] == 0) {
params.locallab.expblur = false;
} else {
params.locallab.expblur = true;
}
if (parent->exptonemaps[sp] == 0) {
params.locallab.exptonemap = false;
} else {
params.locallab.exptonemap = true;
}
if (parent->expretis[sp] == 0) {
params.locallab.expreti = false;
} else {
params.locallab.expreti = true;
}
if (parent->expsharps[sp] == 0) {
params.locallab.expsharp = false;
} else {
params.locallab.expsharp = true;
}
if (parent->expcbdls[sp] == 0) {
params.locallab.expcbdl = false;
} else {
params.locallab.expcbdl = true;
}
if (parent->expexposes[sp] == 0) {
params.locallab.expexpose = false;
} else {
params.locallab.expexpose = true;
}
std::vector<double> cretie;
for (int j = 0; j < parent->sizeretics[sp]; j++) {
@ -1533,6 +1589,97 @@ void Crop::update(int todo)
parent->noisechrodetails[sp] = params.locallab.noisechrodetail = parent->noisechrodetails[0];
parent->sensidens[sp] = params.locallab.sensiden = parent->sensidens[0];
if (parent->expdenois[0] == 0) {
params.locallab.expdenoi = false;
parent->expdenois[sp] = 0;
} else {
params.locallab.expdenoi = true;
parent->expdenois[sp] = 1;
}
if (parent->expcolors[0] == 0) {
params.locallab.expcolor = false;
parent->expcolors[sp] = 0;
} else {
params.locallab.expcolor = true;
parent->expcolors[sp] = 1;
}
if (parent->expvibrances[0] == 0) {
params.locallab.expvibrance = false;
parent->expvibrances[sp] = 0;
} else {
params.locallab.expvibrance = true;
parent->expvibrances[sp] = 1;
}
if (parent->expblurs[0] == 0) {
params.locallab.expblur = false;
parent->expblurs[sp] = 0;
} else {
params.locallab.expblur = true;
parent->expblurs[sp] = 1;
}
if (parent->exptonemaps[0] == 0) {
params.locallab.exptonemap = false;
parent->exptonemaps[sp] = 0;
} else {
params.locallab.exptonemap = true;
parent->exptonemaps[sp] = 1;
}
if (parent->expretis[0] == 0) {
params.locallab.expreti = false;
parent->expretis[sp] = 0;
} else {
params.locallab.expreti = true;
parent->expretis[sp] = 1;
}
if (parent->expsharps[0] == 0) {
params.locallab.expsharp = false;
parent->expsharps[sp] = 0;
} else {
params.locallab.expsharp = true;
parent->expsharps[sp] = 1;
}
if (parent->expcbdls[0] == 0) {
params.locallab.expcbdl = false;
parent->expcbdls[sp] = 0;
} else {
params.locallab.expcbdl = true;
parent->expcbdls[sp] = 1;
}
if (parent->expexposes[0] == 0) {
params.locallab.expexpose = false;
parent->expexposes[sp] = 0;
} else {
params.locallab.expexpose = true;
parent->expexposes[sp] = 1;
}
std::vector<double> ccret;
for (int j = 0; j < parent->sizeretics[sp]; j++) {

View File

@ -203,6 +203,17 @@ ImProcCoordinator::ImProcCoordinator()
sensiexclus(500, -1000),
strucs(500, -1000),
warms(500, -1000),
expdenois(500, -10000),
expcolors(500, -10000),
expvibrances(500, -10000),
expblurs(500, -10000),
exptonemaps(500, -10000),
expretis(500, -10000),
expsharps(500, -10000),
expcbdls(500, -10000),
expexposes(500, -10000),
huerefs(500, -100000.f),
huerefblurs(500, -100000.f),
chromarefs(500, -100000.f),
@ -862,7 +873,7 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
};
int maxdata = 90;//88 10019//87 10018 //86 10017 //85 10016;// 82 10015//78;//73 for 10011
int maxdata = 99; // 90 10020 //88 10019//87 10018 //86 10017 //85 10016;// 82 10015//78;//73 for 10011
if (fic0) {
//find current version mip
@ -906,7 +917,7 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
//initilize newues when first utilisation of Locallab. Prepare creation of Mip files
for (int sp = 1; sp < maxspot; sp++) { // spots default
int t_sp = sp;
int t_mipversion = 10020;//new value for each change
int t_mipversion = 10021;//new value for each change
int t_circrad = 18;
int t_locX = 250;
int t_locY = 250;
@ -1034,6 +1045,18 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
//10019
int t_sensiden = 30;
//10021
int t_expdenoi = 0;
int t_expcolor = 0;
int t_expvibrance = 0;
int t_expblur = 0;
int t_exptonemap = 0;
int t_expreti = 0;
int t_expsharp = 0;
int t_expcbdl = 0;
int t_expexpose = 0;
//all variables except locRETgainCurve 'coomon for all)
fic << "Mipversion=" << t_mipversion << '@' << endl;
fic << "Spot=" << t_sp << '@' << endl;
@ -1129,6 +1152,15 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
fic << "Noiselumdetail=" << t_noiselumdetail << '@' << endl;
fic << "Noisechrodetail=" << t_noisechrodetail << '@' << endl;
fic << "Sensiden=" << t_sensiden << '@' << endl;
fic << "Expdenoi=" << t_expdenoi << '@' << endl;
fic << "Expcolor=" << t_expcolor << '@' << endl;
fic << "Expvibrance=" << t_expvibrance << '@' << endl;
fic << "Expblur=" << t_expblur << '@' << endl;
fic << "Exptonemap=" << t_exptonemap << '@' << endl;
fic << "Expreti=" << t_expreti << '@' << endl;
fic << "Expsharp=" << t_expsharp << '@' << endl;
fic << "Expcbdl=" << t_expcbdl << '@' << endl;
fic << "Expexpose=" << t_expexpose << '@' << endl;
fic << "curveReti=" << t_curvret << '@' << endl;
fic << "curveLL=" << t_curvll << '@' << endl;
@ -1385,6 +1417,61 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
dataspot[83][0] = noisechrodetails[0] = params.locallab.noisechrodetail;
dataspot[84][0] = sensidens[0] = params.locallab.sensiden;
if (!params.locallab.expdenoi) {
dataspot[85][0] = expdenois[0] = 0;
} else {
dataspot[85][0] = expdenois[0] = 1;
}
if (!params.locallab.expcolor) {
dataspot[86][0] = expcolors[0] = 0;
} else {
dataspot[86][0] = expcolors[0] = 1;
}
if (!params.locallab.expvibrance) {
dataspot[87][0] = expvibrances[0] = 0;
} else {
dataspot[87][0] = expvibrances[0] = 1;
}
if (!params.locallab.expblur) {
dataspot[88][0] = expblurs[0] = 0;
} else {
dataspot[88][0] = expblurs[0] = 1;
}
if (!params.locallab.exptonemap) {
dataspot[89][0] = exptonemaps[0] = 0;
} else {
dataspot[89][0] = exptonemaps[0] = 1;
}
if (!params.locallab.expreti) {
dataspot[90][0] = expretis[0] = 0;
} else {
dataspot[90][0] = expretis[0] = 1;
}
if (!params.locallab.expsharp) {
dataspot[91][0] = expsharps[0] = 0;
} else {
dataspot[91][0] = expsharps[0] = 1;
}
if (!params.locallab.expcbdl) {
dataspot[92][0] = expcbdls[0] = 0;
} else {
dataspot[92][0] = expcbdls[0] = 1;
}
if (!params.locallab.expexpose) {
dataspot[93][0] = expexposes[0] = 0;
} else {
dataspot[93][0] = expexposes[0] = 1;
}
// for all curves work around - I do not know how to do with params curves...
//curve Reti local
int siz = params.locallab.localTgaincurve.size();
@ -1682,6 +1769,10 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
maxind = 83;
}
if (versionmip == 10020) {
maxind = 84;
}
while (getline(fich, line)) {
spotline = line;
std::size_t pos = spotline.find("=");
@ -1921,6 +2012,22 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
}
}
if (versionmip <= 10020) {//
for (int sp = 1; sp < maxspot; sp++) { // spots default
dataspot[85][sp] = 0;
dataspot[86][sp] = 0;
dataspot[87][sp] = 0;
dataspot[88][sp] = 0;
dataspot[89][sp] = 0;
dataspot[90][sp] = 0;
dataspot[91][sp] = 0;
dataspot[92][sp] = 0;
dataspot[93][sp] = 0;
}
}
//here we change the number of spot
if (ns < (maxspot - 1)) {
@ -1929,7 +2036,7 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
for (int sp = ns + 1 ; sp < maxspot; sp++) { // spots default
int t_sp = sp;
int t_mipversion = 10020;
int t_mipversion = 10021;
int t_circrad = 18;
int t_locX = 250;
int t_locY = 250;
@ -2049,6 +2156,18 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
//10020
int t_sensiden = 30;
//10021
int t_expdenoi = 0;
int t_expcolor = 0;
int t_expvibrance = 0;
int t_expblur = 0;
int t_exptonemap = 0;
int t_expreti = 0;
int t_expsharp = 0;
int t_expcbdl = 0;
int t_expexpose = 0;
fic << "Mipversion=" << t_mipversion << '@' << endl;
fic << "Spot=" << t_sp << '@' << endl;
fic << "Circrad=" << t_circrad << '@' << endl;
@ -2140,6 +2259,15 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
fic << "Noiselumdetail=" << t_noiselumdetail << '@' << endl;
fic << "Noisechrodetail=" << t_noisechrodetail << '@' << endl;
fic << "Sensiden=" << t_sensiden << '@' << endl;
fic << "Expdenoi=" << t_expdenoi << '@' << endl;
fic << "Expcolor=" << t_expcolor << '@' << endl;
fic << "Expvibrance=" << t_expvibrance << '@' << endl;
fic << "Expblur=" << t_expblur << '@' << endl;
fic << "Exptonemap=" << t_exptonemap << '@' << endl;
fic << "Expreti=" << t_expreti << '@' << endl;
fic << "Expsharp=" << t_expsharp << '@' << endl;
fic << "Expcbdl=" << t_expcbdl << '@' << endl;
fic << "Expexpose=" << t_expexpose << '@' << endl;
fic << "curveReti=" << t_curvret << '@' << endl;
fic << "curveLL=" << t_curvll << '@' << endl;
@ -2165,7 +2293,7 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
std::string spotline2;
int cont2 = 0;
int ns2 = 0;
int maxin = maxdata - 4; //70 ;//64
int maxin = maxdata - 5; //70 ;//64
while (getline(fich2, line2)) {
spotline2 = line2;
@ -2494,6 +2622,78 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
params.locallab.noisechrodetail = noisechrodetails[sp] = dataspot[83][sp];
params.locallab.sensiden = sensidens[sp] = dataspot[84][sp];
if (dataspot[85][sp] == 0) {
expdenois[sp] = 0;
params.locallab.expdenoi = false;
} else {
expdenois[sp] = 1;
params.locallab.expdenoi = true;
}
if (dataspot[86][sp] == 0) {
expcolors[sp] = 0;
params.locallab.expcolor = false;
} else {
expcolors[sp] = 1;
params.locallab.expcolor = true;
}
if (dataspot[87][sp] == 0) {
expvibrances[sp] = 0;
params.locallab.expvibrance = false;
} else {
expvibrances[sp] = 1;
params.locallab.expvibrance = true;
}
if (dataspot[88][sp] == 0) {
expblurs[sp] = 0;
params.locallab.expblur = false;
} else {
expblurs[sp] = 1;
params.locallab.expblur = true;
}
if (dataspot[89][sp] == 0) {
exptonemaps[sp] = 0;
params.locallab.exptonemap = false;
} else {
exptonemaps[sp] = 1;
params.locallab.exptonemap = true;
}
if (dataspot[90][sp] == 0) {
expretis[sp] = 0;
params.locallab.expreti = false;
} else {
expretis[sp] = 1;
params.locallab.expreti = true;
}
if (dataspot[91][sp] == 0) {
expsharps[sp] = 0;
params.locallab.expsharp = false;
} else {
expsharps[sp] = 1;
params.locallab.expsharp = true;
}
if (dataspot[92][sp] == 0) {
expcbdls[sp] = 0;
params.locallab.expcbdl = false;
} else {
expcbdls[sp] = 1;
params.locallab.expcbdl = true;
}
if (dataspot[93][sp] == 0) {
expexposes[sp] = 0;
params.locallab.expexpose = false;
} else {
expcbdls[sp] = 1;
params.locallab.expexpose = true;
}
int *s_datc;
s_datc = new int[70];
@ -3043,6 +3243,95 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
dataspot[83][sp] = noisechrodetails[sp] = params.locallab.noisechrodetail = dataspot[83][0];
dataspot[84][sp] = sensidens[sp] = params.locallab.sensiden = dataspot[84][0];
if (dataspot[85][0] == 0) {
params.locallab.expdenoi = false;
dataspot[85][sp] = 0;
expdenois[sp] = 0;
} else {
params.locallab.expdenoi = true;
dataspot[85][sp] = 1;
expdenois[sp] = 1;
}
if (dataspot[86][0] == 0) {
params.locallab.expcolor = false;
dataspot[86][sp] = 0;
expcolors[sp] = 0;
} else {
params.locallab.expcolor = true;
dataspot[86][sp] = 1;
expcolors[sp] = 1;
}
if (dataspot[87][0] == 0) {
params.locallab.expvibrance = false;
dataspot[87][sp] = 0;
expvibrances[sp] = 0;
} else {
params.locallab.expvibrance = true;
dataspot[87][sp] = 1;
expvibrances[sp] = 1;
}
if (dataspot[88][0] == 0) {
params.locallab.expblur = false;
dataspot[88][sp] = 0;
expblurs[sp] = 0;
} else {
params.locallab.expblur = true;
dataspot[88][sp] = 1;
expblurs[sp] = 1;
}
if (dataspot[89][0] == 0) {
params.locallab.exptonemap = false;
dataspot[89][sp] = 0;
exptonemaps[sp] = 0;
} else {
params.locallab.exptonemap = true;
dataspot[89][sp] = 1;
exptonemaps[sp] = 1;
}
if (dataspot[90][0] == 0) {
params.locallab.expreti = false;
dataspot[90][sp] = 0;
expretis[sp] = 0;
} else {
params.locallab.expreti = true;
dataspot[90][sp] = 1;
expretis[sp] = 1;
}
if (dataspot[91][0] == 0) {
params.locallab.expsharp = false;
dataspot[91][sp] = 0;
expsharps[sp] = 0;
} else {
params.locallab.expsharp = true;
dataspot[91][sp] = 1;
expsharps[sp] = 1;
}
if (dataspot[92][0] == 0) {
params.locallab.expcbdl = false;
dataspot[92][sp] = 0;
expcbdls[sp] = 0;
} else {
params.locallab.expcbdl = true;
dataspot[92][sp] = 1;
expcbdls[sp] = 1;
}
if (dataspot[93][0] == 0) {
params.locallab.expexpose = false;
dataspot[93][sp] = 0;
expexposes[sp] = 0;
} else {
params.locallab.expexpose = true;
dataspot[93][sp] = 1;
expexposes[sp] = 1;
}
int *s_datc;
s_datc = new int[70];
@ -3283,7 +3572,7 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
for (int spe = 1; spe < maxspot; spe++) {
int t_sp = spe;
int t_mipversion = 10020;
int t_mipversion = 10021;
int t_circrad = dataspot[2][spe];
int t_locX = dataspot[3][spe];
int t_locY = dataspot[4][spe];
@ -3374,6 +3663,16 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
int t_noiselumdetail = dataspot[82][spe];
int t_noisechrodetail = dataspot[83][spe];
int t_sensiden = dataspot[84][spe];
int t_expdenoi = dataspot[85][spe];
int t_expcolor = dataspot[86][spe];
int t_expvibrance = dataspot[87][spe];
int t_expblur = dataspot[88][spe];
int t_exptonemap = dataspot[89][spe];
int t_expreti = dataspot[90][spe];
int t_expsharp = dataspot[91][spe];
int t_expcbdl = dataspot[92][spe];
int t_expexpose = dataspot[93][spe];
int t_huerefblur = dataspot[maxdata - 5][spe];
int t_hueref = dataspot[maxdata - 4][spe];
@ -3484,6 +3783,15 @@ void ImProcCoordinator::updatePreviewImage(int todo, Crop* cropCall)
fou << "Noiselumdetail=" << t_noiselumdetail << '@' << endl;
fou << "Noisechrodetail=" << t_noisechrodetail << '@' << endl;
fou << "Sensiden=" << t_sensiden << '@' << endl;
fou << "Expdenoi=" << t_expdenoi << '@' << endl;
fou << "Expcolor=" << t_expcolor << '@' << endl;
fou << "Expvibrance=" << t_expvibrance << '@' << endl;
fou << "Expblur=" << t_expblur << '@' << endl;
fou << "Exptonemap=" << t_exptonemap << '@' << endl;
fou << "Expreti=" << t_expreti << '@' << endl;
fou << "Expsharp=" << t_expsharp << '@' << endl;
fou << "Expcbdl=" << t_expcbdl << '@' << endl;
fou << "Expexpose=" << t_expexpose << '@' << endl;
fou << "huerefblur=" << t_huerefblur << '@' << endl;
fou << "hueref=" << t_hueref << '@' << endl;

View File

@ -357,6 +357,16 @@ protected:
LUTi sensiexclus;
LUTi strucs;
LUTi warms;
LUTi expdenois;
LUTi expcolors;
LUTi expvibrances;
LUTi expblurs;
LUTi exptonemaps;
LUTi expretis;
LUTi expsharps;
LUTi expcbdls;
LUTi expexposes;
LUTf huerefs;
LUTf huerefblurs;

View File

@ -7725,7 +7725,7 @@ void ImProcFunctions::fftw_denoise(int GW, int GH, int max_numblox_W, int min_nu
if (chrom == 0) {
params_Ldetail = min(float(lp.noiseldetail), 99.9f); // max out to avoid div by zero when using noisevar_Ldetail as divisor
} else if (chrom == 1) {
params_Ldetail = min(float(lp.noisechrodetail), 99.9f); // max out to avoid div by zero when using noisevar_Ldetail as divisor
params_Ldetail = min(float(lp.noisechrodetail), 99.9f);
}
float noisevar_Ldetail = SQR(static_cast<float>(SQR(100. - params_Ldetail) + 50.*(100. - params_Ldetail)) * TS * 0.5f);

View File

@ -1103,7 +1103,7 @@ private:
}
ifstream fich(datalab, ios::in);
int maxdata = 90; //88 10019 //87 10018//86 10017//85 10016 //82;//78;//73 10011
int maxdata = 99; // 91 10021 //88 10019 //87 10018//86 10017//85 10016 //82;//78;//73 10011
if (fich && versionmip != 0) {
std::string inser;
@ -1342,6 +1342,60 @@ private:
dataspots[83][0] = params.locallab.noisechrodetail;
dataspots[84][0] = params.locallab.sensiden;
if (!params.locallab.expdenoi) {
dataspots[85][0] = 0;
} else {
dataspots[85][0] = 1;
}
if (!params.locallab.expcolor) {
dataspots[86][0] = 0;
} else {
dataspots[86][0] = 1;
}
if (!params.locallab.expvibrance) {
dataspots[87][0] = 0;
} else {
dataspots[87][0] = 1;
}
if (!params.locallab.expblur) {
dataspots[88][0] = 0;
} else {
dataspots[88][0] = 1;
}
if (!params.locallab.exptonemap) {
dataspots[89][0] = 0;
} else {
dataspots[89][0] = 1;
}
if (!params.locallab.expreti) {
dataspots[90][0] = 0;
} else {
dataspots[90][0] = 1;
}
if (!params.locallab.expsharp) {
dataspots[91][0] = 0;
} else {
dataspots[91][0] = 1;
}
if (!params.locallab.expcbdl) {
dataspots[92][0] = 0;
} else {
dataspots[92][0] = 1;
}
if (!params.locallab.expexpose) {
dataspots[93][0] = 0;
} else {
dataspots[93][0] = 1;
}
dataspots[maxdata - 5][0] = 100.f * params.locallab.huerefblur;
dataspots[maxdata - 4][0] = 100.f * params.locallab.hueref;
dataspots[maxdata - 3][0] = params.locallab.chromaref;
@ -1816,6 +1870,62 @@ private:
params.locallab.noisechrodetail = dataspots[83][sp];
params.locallab.sensiden = dataspots[84][sp];
if (dataspots[85][sp] == 0) {
params.locallab.expdenoi = false;
} else {
params.locallab.expdenoi = true;
}
if (dataspots[86][sp] == 0) {
params.locallab.expcolor = false;
} else {
params.locallab.expcolor = true;
}
if (dataspots[87][sp] == 0) {
params.locallab.expvibrance = false;
} else {
params.locallab.expvibrance = true;
}
if (dataspots[88][sp] == 0) {
params.locallab.expblur = false;
} else {
params.locallab.expblur = true;
}
if (dataspots[89][sp] == 0) {
params.locallab.exptonemap = false;
} else {
params.locallab.exptonemap = true;
}
if (dataspots[90][sp] == 0) {
params.locallab.expreti = false;
} else {
params.locallab.expreti = true;
}
if (dataspots[91][sp] == 0) {
params.locallab.expsharp = false;
} else {
params.locallab.expsharp = true;
}
if (dataspots[92][sp] == 0) {
params.locallab.expcbdl = false;
} else {
params.locallab.expcbdl = true;
}
if (dataspots[93][sp] == 0) {
params.locallab.expexpose = false;
} else {
params.locallab.expexpose = true;
}
params.locallab.huerefblur = ((float) dataspots[maxdata - 5][sp]) / 100.f;
params.locallab.hueref = ((float) dataspots[maxdata - 4][sp]) / 100.f;
params.locallab.chromaref = dataspots[maxdata - 3][sp];

View File

@ -1826,14 +1826,70 @@ bool Locallab::localComputed_()
noisechrodetail->setValue(nextdatasp[83]);
sensiden->setValue(nextdatasp[84]);
double intermedblur = 0.01 * (double) nextdatasp[85];
//exp
if (nextdatasp[85] == 0) {
expdenoi->setEnabled(false);
} else {
expdenoi->setEnabled(true);
}
if (nextdatasp[86] == 0) {
expcolor->setEnabled(false);
} else {
expcolor->setEnabled(true);
}
if (nextdatasp[87] == 0) {
expvibrance->setEnabled(false);
} else {
expvibrance->setEnabled(true);
}
if (nextdatasp[88] == 0) {
expblur->setEnabled(false);
} else {
expblur->setEnabled(true);
}
if (nextdatasp[89] == 0) {
exptonemap->setEnabled(false);
} else {
exptonemap->setEnabled(true);
}
if (nextdatasp[90] == 0) {
expreti->setEnabled(false);
} else {
expreti->setEnabled(true);
}
if (nextdatasp[91] == 0) {
expsharp->setEnabled(false);
} else {
expsharp->setEnabled(true);
}
if (nextdatasp[92] == 0) {
expcbdl->setEnabled(false);
} else {
expcbdl->setEnabled(true);
}
if (nextdatasp[93] == 0) {
expexpose->setEnabled(false);
} else {
expexpose->setEnabled(true);
}
double intermedblur = 0.01 * (double) nextdatasp[94];
huerefblur->setValue(intermedblur);
double intermed = 0.01 * (double) nextdatasp[86];
double intermed = 0.01 * (double) nextdatasp[95];
hueref->setValue(intermed);
chromaref->setValue(nextdatasp[87]);
lumaref->setValue(nextdatasp[88]);
sobelref->setValue(nextdatasp[89]);
chromaref->setValue(nextdatasp[96]);
lumaref->setValue(nextdatasp[97]);
sobelref->setValue(nextdatasp[98]);
int *s_datc;
s_datc = new int[70];
@ -2112,12 +2168,45 @@ bool Locallab::localComputed_()
listener->panelChanged(Evlocallabshape, M(""));
}
if (listener) {//for expander denoise
listener->panelChanged(EvLocenadenoi, M(""));
}
if (listener) {//for expander color
listener->panelChanged(EvLocenacolor, M(""));
}
if (listener) {//for expander vib
listener->panelChanged(EvLocenavibrance, M(""));
}
if (listener) {//for expander tonem
listener->panelChanged(EvLocenatonemap, M(""));
}
if (listener) {//for expander reti
listener->panelChanged(EvLocenareti, M(""));
}
if (listener) {//for expander sharp
listener->panelChanged(EvLocenasharp, M(""));
}
if (listener) {//for expander cbdl
listener->panelChanged(EvLocenacbdl, M(""));
}
if (listener) {//for expander cbdl
listener->panelChanged(EvLocenaexpose, M(""));
}
return false;
}
void Locallab::localChanged(int **datasp, std::string datastr, std::string ll_str, std::string lh_str, std::string cc_str, std::string hh_str, std::string sk_str, std::string ps_str, std::string ex_str, int sp, int maxdat)
{
for (int i = 2; i < 90; i++) {
for (int i = 2; i < 99; i++) {
nextdatasp[i] = datasp[i][sp];
}

View File

@ -236,7 +236,7 @@ private:
int nextdatasp[90];
int nextdatasp[99];
int nextlength;
std::string nextstr;
std::string nextstr2;