mirror of
https://github.com/aNNiMON/Own-Programming-Language-Tutorial.git
synced 2024-09-20 00:34:20 +03:00
21 lines
554 B
Scala
21 lines
554 B
Scala
use std, canvasfx
|
|
|
|
graphics = window("JavaFX Image negation demo", 400, 400)
|
|
imgSource = createImage("https://picsum.photos/400/200/")
|
|
pixels = imgSource.getPixels()
|
|
size = length(pixels)
|
|
for i = 0, i < size, i++ {
|
|
pixel = pixels[i]
|
|
r = (pixel >> 16) & 0xFF
|
|
g = (pixel >> 8) & 0xFF
|
|
b = pixel & 0xFF
|
|
r = 255 - r
|
|
g = 255 - g
|
|
b = 255 - b
|
|
pixels[i] = 0xFF000000 | (r << 16) | (g << 8) | b
|
|
}
|
|
imgNegate = createImage(imgSource.width, imgSource.height, pixels)
|
|
|
|
graphics.drawImage(imgSource, 0, 0)
|
|
graphics.drawImage(imgNegate, 0, 200)
|
|
repaint() |