Adjustements to Const and Label Local labgrid
This commit is contained in:
parent
7701a56e6c
commit
017c40fd12
@ -1985,7 +1985,7 @@ TP_LOCALLAB_CURVEEDITOR_CC_TOOLTIP;If curves at the top, mask is completely blac
|
||||
TP_LOCALLAB_CURVEMETHOD_TOOLTIP;'Normal', the curve L=f(L) has the same algorithm than slider lightness.\n'Super' the curve L=f(L) has an new improved algorithm, which can leeds in some cases to artifacts.
|
||||
TP_LOCALLAB_EXCLUF;Excluding
|
||||
TP_LOCALLAB_EXCLUF_TOOLTIP;Can be used to exclude this part of datas - move Scope to extend color.\n You can apply all settings to this RT-spot.
|
||||
TP_LOCALLAB_LABGRID_VALUES;a(L)=%1 b(L)=%2\na(a)=%3 b(a)=%4
|
||||
TP_LOCALLAB_LABGRID_VALUES;High(a)=%1 High(b)=%2\nLow(a)=%3 Low(b)=%4
|
||||
TP_LOCALLAB_LABGRID;Color correction grid
|
||||
TP_LOCALLAB_SENSIDEN;Scope
|
||||
TP_LOCALLAB_SENSIEXCLU;Scope
|
||||
|
@ -7960,13 +7960,15 @@ void ImProcFunctions::Lab_Local(int call, int sp, float** shbuffer, LabImage * o
|
||||
|
||||
|
||||
//local color and light
|
||||
const float factor = LocallabParams::LABGRIDL_CORR_MAX * 3.28f;
|
||||
const float factor = LocallabParams::LABGRIDL_CORR_MAX * 3.276f;
|
||||
const float scaling = LocallabParams::LABGRIDL_CORR_SCALE;
|
||||
const float scaledirect = LocallabParams::LABGRIDL_DIRECT_SCALE;
|
||||
float a_scale = (lp.highA - lp.lowA) / factor / scaling;
|
||||
float a_base = lp.lowA / scaling;
|
||||
float b_scale = (lp.highB - lp.lowB) / factor / scaling;
|
||||
float b_base = lp.lowB / scaling;
|
||||
bool ctoning = (a_scale != 0.f || b_scale != 0.f || a_base != 0.f || b_base != 0.f);
|
||||
|
||||
if (!lp.inv && (lp.chro != 0 || lp.ligh != 0.f || lp.cont != 0 || ctoning || lp.qualcurvemet != 0 || lp.showmaskcolmet == 2 || lp.enaColorMask || lp.showmaskcolmet == 3 || lp.showmaskcolmet == 4) && lp.colorena) { // || lllocalcurve)) { //interior ellipse renforced lightness and chroma //locallutili
|
||||
|
||||
|
||||
@ -8468,13 +8470,17 @@ void ImProcFunctions::Lab_Local(int call, int sp, float** shbuffer, LabImage * o
|
||||
}
|
||||
|
||||
if (ctoning) {
|
||||
if(lp.gridmet == 0) {
|
||||
bufcolcalc->a[loy - begy][lox - begx] += bufcolcalc->L[loy - begy][lox - begx] * a_scale + a_base;
|
||||
bufcolcalc->b[loy - begy][lox - begx] += bufcolcalc->L[loy - begy][lox - begx] * b_scale + b_base;
|
||||
} else if(lp.gridmet == 1) {
|
||||
bufcolcalc->a[loy - begy][lox - begx] += 35000.f * a_scale;
|
||||
bufcolcalc->b[loy - begy][lox - begx] += 35000.f * b_scale;
|
||||
}
|
||||
if (lp.gridmet == 0) {
|
||||
bufcolcalc->a[loy - begy][lox - begx] += bufcolcalc->L[loy - begy][lox - begx] * a_scale + a_base;
|
||||
bufcolcalc->b[loy - begy][lox - begx] += bufcolcalc->L[loy - begy][lox - begx] * b_scale + b_base;
|
||||
} else if (lp.gridmet == 1) {
|
||||
bufcolcalc->a[loy - begy][lox - begx] += scaledirect * a_scale;
|
||||
bufcolcalc->b[loy - begy][lox - begx] += scaledirect * b_scale;
|
||||
}
|
||||
|
||||
bufcolcalc->a[loy - begy][lox - begx] = CLIPC(bufcolcalc->a[loy - begy][lox - begx]);
|
||||
bufcolcalc->b[loy - begy][lox - begx] = CLIPC(bufcolcalc->b[loy - begy][lox - begx]);
|
||||
|
||||
}
|
||||
|
||||
float rL;
|
||||
|
@ -2367,7 +2367,7 @@ LocallabParams::LocallabSpot::LocallabSpot() :
|
||||
labgridAHigh(0.0),
|
||||
labgridBHigh(0.0),
|
||||
|
||||
strengthgrid(20),
|
||||
strengthgrid(30),
|
||||
sensi(15),
|
||||
structcol(0),
|
||||
blurcolde(5),
|
||||
@ -2649,8 +2649,9 @@ bool LocallabParams::LocallabSpot::operator !=(const LocallabSpot& other) const
|
||||
return !(*this == other);
|
||||
}
|
||||
|
||||
const double LocallabParams::LABGRIDL_CORR_MAX = 10000.f;
|
||||
const double LocallabParams::LABGRIDL_CORR_SCALE = 3.28f;
|
||||
const double LocallabParams::LABGRIDL_CORR_MAX = 12800.;
|
||||
const double LocallabParams::LABGRIDL_CORR_SCALE = 3.276;
|
||||
const double LocallabParams::LABGRIDL_DIRECT_SCALE = 41950.;
|
||||
|
||||
LocallabParams::LocallabParams() :
|
||||
enabled(false),
|
||||
|
@ -1093,6 +1093,7 @@ struct LocallabParams {
|
||||
bool enabled;
|
||||
static const double LABGRIDL_CORR_MAX;
|
||||
static const double LABGRIDL_CORR_SCALE;
|
||||
static const double LABGRIDL_DIRECT_SCALE;
|
||||
int nbspot;
|
||||
int selspot;
|
||||
std::vector<LocallabSpot> spots;
|
||||
|
@ -76,7 +76,7 @@ Locallab::Locallab():
|
||||
lightness(Gtk::manage(new Adjuster(M("TP_LOCALLAB_LIGHTNESS"), -100, 100, 1, 0))),
|
||||
contrast(Gtk::manage(new Adjuster(M("TP_LOCALLAB_CONTRAST"), -100, 100, 1, 0))),
|
||||
chroma(Gtk::manage(new Adjuster(M("TP_LOCALLAB_CHROMA"), -100, 150, 1, 0))),
|
||||
strengthgrid(Gtk::manage(new Adjuster(M("TP_LOCALLAB_STRGRID"), 0, 100, 1, 20))),
|
||||
strengthgrid(Gtk::manage(new Adjuster(M("TP_LOCALLAB_STRGRID"), 0, 100, 1, 30))),
|
||||
sensi(Gtk::manage(new Adjuster(M("TP_LOCALLAB_SENSI"), 0, 100, 1, 15))),
|
||||
structcol(Gtk::manage(new Adjuster(M("TP_LOCALLAB_STRUCCOL"), 0, 100, 1, 0))),
|
||||
blurcolde(Gtk::manage(new Adjuster(M("TP_LOCALLAB_BLURDE"), 2, 100, 1, 5))),
|
||||
@ -221,7 +221,7 @@ Locallab::Locallab():
|
||||
// Color & Light
|
||||
expcolor->signal_button_release_event().connect_notify(sigc::bind(sigc::mem_fun(this, &Locallab::foldAllButMe), expcolor));
|
||||
enablecolorConn = expcolor->signal_enabled_toggled().connect(sigc::bind(sigc::mem_fun(this, &Locallab::enableToggled), expcolor));
|
||||
// expcolor->set_tooltip_text(M("TP_LOCALLAB_EXPCOLOR_TOOLTIP"));
|
||||
// expcolor->set_tooltip_text(M("TP_LOCALLAB_EXPCOLOR_TOOLTIP"));
|
||||
|
||||
curvactivConn = curvactiv->signal_toggled().connect(sigc::mem_fun(*this, &Locallab::curvactivChanged));
|
||||
|
||||
@ -249,7 +249,6 @@ Locallab::Locallab():
|
||||
gridMethod->append(M("TP_LOCALLAB_GRIDONE"));
|
||||
gridMethod->append(M("TP_LOCALLAB_GRIDTWO"));
|
||||
gridMethod->set_active(0);
|
||||
// gridMethod->set_tooltip_markup(M("TP_LOCALLAB_GRIDMETHOD_TOOLTIP"));
|
||||
gridMethodConn = gridMethod->signal_changed().connect(sigc::mem_fun(*this, &Locallab::gridMethodChanged));
|
||||
|
||||
llCurveEditorG->setCurveListener(this);
|
||||
|
Loading…
x
Reference in New Issue
Block a user