Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void MainWindow::mieszanie()
- {
- // deklaracja wskaźnika do poruszania się po pikselach obrazu
- unsigned char *wsk, *wskaznik1, *wskaznik2;
- // przechodzimy po wszystkich wierszach obrazu
- for(int i=0; i<height; i++)
- {
- // ustawiamy wskaźnik na początku i-tego wiersza
- wsk = img->scanLine(i);
- wskaznik1 = archiwum[0]->scanLine(i);
- wskaznik2 = archiwum[2]->scanLine(i);
- wskaznik3 = archiwum[3]->scanLine(i);
- // przechodzimy po wszystkich piselach i-tego wiersza
- // i nadajemy im wartość (0,0,0) odpowiadającą kolorowi czarnemu
- for(int j=0; j<width; j++)
- {
- wsk[4*j] = transpar[0]*wskaznik1[4*j]+(1-transpar[0])*wskaznik2[4*j]; // ustawiamy składową ,,niebieską'' na 0
- wsk[4*j+1] = transpar[0]*wskaznik1[4*j+1]+(1-transpar[0])*wskaznik2[4*j+1]; // ustawiamy składową ,,zielonąą'' na 0
- wsk[4*j+2] = transpar[0]*wskaznik1[4*j+2]+(1-transpar[0])*wskaznik2[4*j+2]; // ustawiamy składową ,,czerwoną'' na 0
- }
- }
- update();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement