Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.70 KB | None | 0 0
  1. def multiplyWithFilter(
  2. x: Int,
  3. y: Int,
  4. image: Image,
  5. filter: Array[Array[Int]],
  6. divisor: Int): Color = {
  7.  
  8. val filterSize = filter.size
  9. val centre = filterSize / 2
  10. var sum = new Color(0, 0, 0) // alustetaan musta väri summaa varten
  11. for {
  12. i <- 0 until filterSize
  13. j <- 0 until filterSize
  14. } {
  15. // aluksi mennään imagen datassa puolet filtterin koosta taaksepäin
  16. // jonka jälkeen summaan lisätään datan pisteet * filtterin arvo vastaavassa kohdassa
  17. val toAdd = image.data(x + i)(y + j) * filter(i)(j)
  18. sum += toAdd
  19. }
  20. (new Color(sum.r / divisor, sum.g / divisor, sum.b / divisor)).clamp // lopuksi jaetaan kaikki jakajalla
  21. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement