87 / 103

Images

Rasmlar

image paketi Image interface'ini belgilaydi:

example.go
package image

type Image interface {
    ColorModel() color.Model
    Bounds() Rectangle
    At(x, y int) color.Color
}

Eslatma: Bounds metodining qaytaradigan Rectangle qiymati aslida image.Rectangle dir, chunki e'lon image paketi ichida joylashgan.

(Barcha tafsilotlar uchun hujjatga qarang.)

color.Color va color.Model tiplari ham interface, lekin biz oldindan belgilangan color.RGBA va color.RGBAModel amalga oshirishlaridan foydalanib, buni e'tiborga olmaymiz. Bu interface va tiplar image/color paketida belgilangan.

Topshiriqlar

Yechimni kodning pastki qismidagi Topshiriqlar bo'limiga yozing, so'ng Submit tugmasini bosing. Mavzu mustahkam o'zlashishi uchun ikkala topshiriqni ham bajaring.

1-topshiriq

Olcham(m image.Image) (int, int) funksiyasini yozing: rasmning eni va bo'yini (Bounds() orqali) qaytarsin. Masalan, image.Rect(0, 0, 100, 50) uchun 100, 50; image.Rect(10, 10, 20, 40) uchun 10, 30.

2-topshiriq

Qora(m image.Image, x, y int) bool funksiyasini yozing: (x, y) piksel rangi qora (R, G, B kanallari nol) bo'lsagina true qaytarsin. Yangi image.NewRGBA dagi barcha piksellar qora.