Advertisement
valerio_mazza

Funzione mixer - Ex. II Completare il codice

Nov 2nd, 2019
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.08 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 ...
  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