Further patches to exposure and tone curve. Histogram now stays fixed in tone curve, but all sliders up to and including brightness/contrast are applied before tone curve histogram is calculated and displayed. Bug in tone curve interaction with highlight reconstruction is fixed.

This commit is contained in:
Emil Martinec
2010-11-14 17:11:54 -06:00
parent aa666fd19c
commit c296961a56
3 changed files with 186 additions and 9 deletions

View File

@@ -376,14 +376,9 @@ void ImProcCoordinator::updateHistograms (int x1, int y1, int x2, int y2) {
memset (ghist, 0, 256*sizeof(int));
memset (bhist, 0, 256*sizeof(int));
memset (bcrgbhist, 0, 256*sizeof(int));
memset (bcLhist, 0, 256*sizeof(int));
for (int i=y1; i<y2; i++) {
int ofs = (i*pW + x1)*3;
for (int j=x1; j<x2; j++) {
int Y = CLIPTO((299*previmg->data[ofs]+587*previmg->data[ofs+1]+114*previmg->data[ofs+2]),0,255000)/1000;
bcrgbhist[Y]++;
rhist[previmg->data[ofs++]]++;
ghist[previmg->data[ofs++]]++;
bhist[previmg->data[ofs++]]++;
@@ -394,7 +389,6 @@ void ImProcCoordinator::updateHistograms (int x1, int y1, int x2, int y2) {
for (int i=y1; i<y2; i++)
for (int j=x1; j<x2; j++) {
Lhist[nprevl->L[i][j]/256]++;
bcLhist[nprevl->L[i][j]/256]++;
}
/*for (int i=0; i<256; i++) {