mirror of
https://github.com/hajimehoshi/ebiten.git
synced 2024-11-10 04:57:26 +01:00
graphics: Add TestImageStretch (#611)
This commit is contained in:
parent
d7d892f2d6
commit
b9cd7afff5
@ -796,3 +796,40 @@ func TestImageCopy(t *testing.T) {
|
|||||||
img1 := *img0
|
img1 := *img0
|
||||||
img1.Fill(color.Transparent)
|
img1.Fill(color.Transparent)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestImageStretch(t *testing.T) {
|
||||||
|
img0, _ := NewImage(16, 17, FilterDefault)
|
||||||
|
|
||||||
|
pix := make([]byte, 4*16*17)
|
||||||
|
for i := 0; i < 16*16; i++ {
|
||||||
|
pix[4*i] = 0xff
|
||||||
|
pix[4*i+3] = 0xff
|
||||||
|
}
|
||||||
|
for i := 0; i < 16; i++ {
|
||||||
|
pix[4*(16*16+i)+1] = 0xff
|
||||||
|
pix[4*(16*16+i)+3] = 0xff
|
||||||
|
}
|
||||||
|
img0.ReplacePixels(pix)
|
||||||
|
|
||||||
|
// TODO: 4096 doesn't pass on MacBook Pro (#611).
|
||||||
|
const h = 2048
|
||||||
|
img1, _ := NewImage(16, h, FilterDefault)
|
||||||
|
for i := 1; i < h; i++ {
|
||||||
|
img1.Clear()
|
||||||
|
op := &DrawImageOptions{}
|
||||||
|
op.GeoM.Scale(1, float64(i)/16)
|
||||||
|
r := image.Rect(0, 0, 16, 16)
|
||||||
|
op.SourceRect = &r
|
||||||
|
img1.DrawImage(img0, op)
|
||||||
|
for j := -1; j <= 1; j++ {
|
||||||
|
got := img1.At(0, i+j).(color.RGBA)
|
||||||
|
want := color.RGBA{}
|
||||||
|
if j < 0 {
|
||||||
|
want = color.RGBA{0xff, 0, 0, 0xff}
|
||||||
|
}
|
||||||
|
if got != want {
|
||||||
|
t.Errorf("At(%d, %d) (i=%d): got: %#v, want: %#v", 0, i+j, i, got, want)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user