pixie/tests/test_images.nim

121 lines
2.9 KiB
Nim
Raw Normal View History

2021-03-03 18:37:15 +00:00
import chroma, pixie, pixie/internal, vmath
2020-11-22 20:12:53 +00:00
2020-11-20 06:12:44 +00:00
block:
2021-01-23 20:17:28 +00:00
let image = newImage(10, 10)
2020-11-20 06:12:44 +00:00
image[0, 0] = rgba(255, 255, 255, 255)
doAssert image[0, 0] == rgba(255, 255, 255, 255)
block:
2021-01-23 20:17:28 +00:00
let image = newImage(10, 10)
2020-11-28 00:54:10 +00:00
image.fill(rgba(255, 0, 0, 255))
2020-11-20 06:12:44 +00:00
doAssert image[0, 0] == rgba(255, 0, 0, 255)
2020-11-21 18:34:57 +00:00
2021-01-20 00:50:51 +00:00
block:
2021-01-23 20:17:28 +00:00
let
image = newImage(256, 256)
subImage = image.subImage(0, 0, 128, 128)
doAssert subImage.width == 128 and subImage.height == 128
block:
let image = newImage(10, 10)
2021-01-20 00:50:51 +00:00
image.fill(rgba(255, 0, 0, 128))
2021-02-25 22:11:36 +00:00
image.data.toPremultipliedAlpha()
2021-01-20 00:50:51 +00:00
doAssert image[9, 9] == rgba(128, 0, 0, 128)
block:
2021-01-23 20:17:28 +00:00
let image = newImage(10, 10)
2021-01-20 00:50:51 +00:00
image.fill(rgba(128, 0, 0, 128))
2021-02-25 22:11:36 +00:00
image.data.toStraightAlpha()
2021-01-24 22:03:35 +00:00
doAssert image[9, 9] == rgba(254, 0, 0, 128)
2021-01-20 00:50:51 +00:00
block:
let image = newImage(100, 100)
2021-02-25 23:56:52 +00:00
image.fill(rgbx(200, 200, 200, 200))
image.applyOpacity(0.5)
2021-02-25 23:56:52 +00:00
doAssert image[0, 0] == rgbx(100, 100, 100, 100)
doAssert image[88, 88] == rgbx(100, 100, 100, 100)
2021-01-23 05:33:05 +00:00
block:
let
a = newImage(101, 101)
b = newImage(50, 50)
a.fill(rgba(255, 0, 0, 255))
b.fill(rgba(0, 255, 0, 255))
a.draw(b, vec2(0, 0))
a.writeFile("tests/images/flipped1.png")
a.flipVertical()
a.writeFile("tests/images/flipped2.png")
a.flipHorizontal()
a.writeFile("tests/images/flipped3.png")
2021-01-31 01:44:28 +00:00
block:
let
a = readImage("tests/images/flipped1.png")
b = a.superImage(-10, 0, 20, 20)
b.writeFile("tests/images/superimage1.png")
block:
let
a = readImage("tests/images/flipped1.png")
b = a.superImage(-10, -10, 20, 20)
b.writeFile("tests/images/superimage2.png")
block:
let
a = readImage("tests/images/flipped1.png")
b = a.superImage(90, 0, 120, 120)
b.writeFile("tests/images/superimage3.png")
block:
let
a = readImage("tests/images/flipped1.png")
b = a.superImage(90, 90, 120, 120)
b.writeFile("tests/images/superimage4.png")
block:
let
a = readImage("tests/images/flipped1.png")
b = a.superImage(-10, -10, 120, 120)
b.writeFile("tests/images/superimage5.png")
block:
let
a = readImage("tests/images/flipped1.png")
b = a.superImage(45, 45, 20, 20)
b.writeFile("tests/images/superimage6.png")
2021-02-08 02:39:46 +00:00
block:
let
a = readImage("tests/images/flipped1.png")
b = a.minifyBy2()
b.writeFile("tests/images/minifiedBy2.png")
2021-02-08 03:15:02 +00:00
block:
let
a = readImage("tests/images/flipped1.png")
b = a.minifyBy2(2)
b.writeFile("tests/images/minifiedBy4.png")
2021-02-09 04:26:51 +00:00
block:
let a = newImage(100, 100)
2021-02-25 23:56:52 +00:00
a.fill(rgbx(50, 100, 150, 200))
2021-02-09 04:26:51 +00:00
a.invert()
2021-02-25 23:56:52 +00:00
doAssert a[0, 0] == rgbx(44, 33, 22, 55)
2021-02-27 00:42:40 +00:00
block:
let image = newImage(100, 100)
image.fill(rgba(0, 0, 0, 255))
image.fillRect(rect(25, 25, 50, 50), rgba(255, 255, 255, 255))
image.blur(20)
image.writeFile("tests/images/imageblur20.png")
block:
let image = newImage(100, 100)
image.fill(rgba(0, 0, 0, 255))
image.fillRect(rect(25, 25, 50, 50), rgba(255, 255, 255, 255))
image.blur(20, rgba(0, 0, 0, 255))
image.writeFile("tests/images/imageblur20oob.png")