Advertisement
Francesco-_-

mixer

Nov 4th, 2019
180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. # Completare il codice seguente per miscelare progressivamente due immagini;
  2. # si assuma per semplicita che la seconda immagine abbia sempre dimensioni uguali o
  3. # maggiori di quelle della prima immagine;
  4. # i ... indicano la mancanza di una o piu' parti di codice
  5. def mixer(p1, p2) :
  6. # @param p1: Picture
  7. # @param p2: Picture;
  8. canvas = makeEmptyPicture(getWidth(p1),getHeight(p1))
  9. for b in range(0, 101, 5):
  10. blendPictures(p1, p2, b, canvas)
  11. repaint(canvas)
  12.  
  13. def blendPictures(pict1, pict2, blendFactor, canvas) :
  14. # @param pict: picture
  15. for x in range(0, getWidth(pict1)) :
  16. for y in range(0, getHeight(pict1)):
  17. pix1 = getPixel(pict1, x, y)
  18. pix2 = getPixel(pict2, x, y)
  19. pixCanvas = getPixel(canvas, x,y)
  20. newRed = (blendFactor/100.0)*getRed(pix1)+(1-(blendFactor/100.0))*getRed(pix2)
  21. newGreen = (blendFactor/100.0)*getGreen(pix1)+(1-(blendFactor/100.0))*getGreen(pix2)
  22. newBlue = (blendFactor/100.0)*getBlue(pix1)+(1-(blendFactor/100.0))*getBlue(pix2)
  23. color = makeColor(newRed,newGreen,newBlue)
  24. setColor(pixCanvas,color)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement