wczytuje obrazek
img = new QImage(":/logo.jpg"); //wyswietlany obrazek
oryginal = new QImage(":/logo.jpg"); // zapamietanie oryginalnego obrazka
// Wskaznik za pomoca, ktorego bedziemy modyfikowac obraz
unsigned char *ptr,*org;
czysc();
// Funkcja "bits()" zwraca wskaznik do pierwszego piksela danych
org = oryginal->bits();
ptr = img->bits();
mam funkcje interpolacja ze wzorem
double MyWindow::Interpolacja(int x, int y, double dx){
return (1-dx)*x+dx*y;
}
// W kazdym wierszu jest "szer" pikseli (tzn. 4 * "szer" bajtow)
// interpolacja dla poziomu z dwuch pionow
ptr[szer*4*i + 4*j] = round(Interpolacja(Interpolacja(org[szer*4*x + 4*y],org[szer*4*xn + 4*y],a),Interpolacja(org[szer*4*x + 4*yn],org[szer*4*xn + 4*yn],a),b));
ptr[szer*4*i + 4*j + 1] = round(Interpolacja(Interpolacja(org[szer*4*x + 4*y + 1],org[szer*4*xn + 4*y + 1],a),Interpolacja(org[szer*4*x + 4*yn + 1],org[szer*4*xn + 4*yn + 1],a),b));
ptr[szer*4*i + 4*j + 2] = round(Interpolacja(Interpolacja(org[szer*4*x + 4*y + 2],org[szer*4*xn + 4*y + 2],a),Interpolacja(org[szer*4*x + 4*yn + 2],org[szer*4*xn + 4*yn + 2],a),b));
x,y,a,b nie są ważne , czy ktoś moze mi wytlumaczyc jak ta interpolacja działa i w jaki sposob te argumenty zostaly przekazane bo dla mnie to jest mega nie czytelne nie moge tego zrozumiec z gory dziekuję