V`ung d¯i.nh ngh˜ıa bo.˙’i pixel

Một phần của tài liệu Lập trình đồ họa máy tính ppsx (Trang 127 - 129)

4 Tˆ o m` au v` ung

4.1.1V`ung d¯i.nh ngh˜ıa bo.˙’i pixel

Ta gia˙’ thiˆe´t v`ung d¯u.o..c bao quanh bo.˙’i c´ac pixel m`a gi´a tri. cu˙’a n´o kh´ac v´o.i gi´a tri. c´ac pixel bˆen trong v`ung. Ch´ung ta c´o thˆe˙’ gia˙’ thiˆe´t, chˇa˙’ng ha.n, tˆa´t ca˙’ c´ac pixel bˆen trong v`ung c´o c`ung gi´a tri., v`a trong tru.`o.ng ho..p n`ay pixel l`a pixel biˆen nˆe´u n´o kˆe` v´o.i pixel bˆen trong nhu.ng

c´o gi´a tri. kh´ac v´o.i gi´a tri. pixel bˆen trong v`ung. Ch´ung ta c˜ung c´o thˆe˙’ g´an mˆo.t pha.m vi cho ph´ep c´ac gi´a tri. pixel v´o.i ca˙’ phˆa`n trong v`a biˆen. Tuy nhiˆen, d¯ˆe˙’ d¯o.n gia˙’n, thuˆa.t to´an tr`ınh b`ay trong phˆa` n n`ay gia˙’ thiˆe´t c´ac pixel biˆen c´o c`ung mˆo.t gi´a tri., v`a c´ac pixel bˆen trong v`ung c´o c`ung gi´a tri. (kh´ac gi´a tri. biˆen).

Trong nhiˆe` u ´u.ng du.ng, viˆe.c su.˙’ du.ng mˆo.t pha.m vi thay d¯ˆo˙’i cu˙’a c´ac to.a d¯ˆo. pixel x´ac d¯i.nh to`an bˆo. hay mˆo.t phˆa`n cu˙’a biˆen cu˙’a mˆo.t v`ung l`a cˆa`n thiˆe´t. Do d¯´o, kh´ai niˆe.m “pixel biˆen” c´o thˆe˙’ d¯u.o..c n´o.i rˆo.ng ra d¯ˆe˙’ ch´u.a c´ac pixel bˆen ngo`ai mˆo.t v`ung x´ac d¯i.nh tru.´o.c. V´o.i c´ach n`ay, mˆo.t v`ung c´o thˆe˙’ bi. chˇa.n bo.˙’i bˆo. d¯ˆe.m m`an h`ınh hoˇa.c bo.˙’i mˆo.t cu.˙’a sˆo˙’ cho tru.´o.c c˜ung nhu. bo.˙’i c´ac pixel c´o gi´a tri. cho tru.´o.c hoˇa.c thuˆo.c mˆo.t pha.m vi n`ao d¯´o.

C´ac v`ung d¯u.o..c d¯i.nh ngh˜ıa tu`y theo c´ac m`au cu˙’a c´ac pixel, v`a nh˜u.ng gi´a tri. m`au n`ay cho biˆe´t vi. tr´ı cu˙’a phˆa`n trong, phˆa`n ngo`ai v`a biˆen cu˙’a v`ung. D- ˆe˙’ x´ac d¯i.nh phˆa`n bˇa´t d¯ˆa`u v`a kˆe´t th´uc cu˙’a v`ung, ta cˆa` n d¯i.nh ngh˜ıa hai pixel l`a “kˆe` nhau” hay “liˆen thˆong”.

C´o hai d¯i.nh ngh˜ıa co. ba˙’n vˆe` liˆen thˆong. Gia˙’ su.˙’p= (x, y) l`a pixel n`ao d¯´o. K´y hiˆe.u

N4(p) := {(x−1, y),(x+ 1, y),(x, y1),(x, y+ 1)} l`a lˆan cˆa.n 4-liˆen thˆong cu˙’a p; v`a

N8(p) :=N4(p)∪ {(x−1, y1),(x+ 1, y1),(x1, y+ 1),(x+ 1, y+ 1)}

l`a lˆan cˆa.n 8-liˆen thˆongcu˙’a p. Do d¯´o pixel (23,35) l`a 4-liˆen thˆong v´o.i pixel (23,36) v`a 8-liˆen thˆong v´o.i pixel (24,36) nhu.ng khˆong 4-liˆen thˆong v´o.i pixel (24,36).

Ch´ung ta c˜ung cˆa` n phˆan biˆe.t c´ach d¯i.nh ngh˜ıa v`ung theo phˆa`n trong hay biˆen.

D- i.nh ngh˜ıa bo.˙’i phˆa`n trong. Tˆa´t ca˙’ c´ac pixel bˆen trong v`ung c´o c`ung mˆo.t gi´a tri. m`au

OldV alue, v`a c´ac pixel biˆen c´o gi´a tri. m`au kh´ac v´o.iOldV alue. V`ung d¯i.nh ngh˜ıa bo.˙’i phˆa` n trong c´o thˆe˙’ c´o lˆo˜ thu˙’ng gˆo`m c´ac pixel c´o m`au kh´ac v´o.i OldV alue.

D- i.nh ngh˜ıa bo.˙’i biˆen. V`ung d¯i.nh ngh˜ıa bo.˙’i tˆa.p c´ac pixel c´o m`au biˆen-BoundaryValue,

v`a c´ac pixel bˆen trong khˆong c´o gi´a tri. n`ay. C´ac pixel c´o m`au biˆenBoundaryValue c´o thˆe˙’ xuˆa´t hiˆe.n bˆen trong v`ung tu.o.ng ´u.ng v´o.i nh˜u.ng lˆo˜ thu˙’ng.

Nˆe´u ta cho ph´ep c´ac pixel bˆen trong v`ung l`a 8-liˆen thˆong th`ı cˆa` n pha˙’i gia˙’ thiˆe´t c´ac pixel trˆen d¯u.`o.ng biˆen xung quanh v`ung pha˙’i 4-liˆen thˆong. Ngu.o..c la.i, nˆe´u gia˙’ thiˆe´t c´ac pixel biˆen l`a 8-liˆen thˆong th`ı cˆa` n gia˙’ thiˆe´t c´ac pixel bˆen trong l`a 4-liˆen thˆong. L´y do cu˙’a gia˙’ thiˆe´t n`ay l`a: nˆe´u ca˙’ hai biˆen v`a phˆa` n trong d¯u.o..c d¯i.nh ngh˜ıa l`a 8-liˆen thˆong th`ı pixel bˆen trong c´o thˆe˙’ d¯u.o..c nˆo´i v´o.i pixel bˆen ngo`ai d¯u.`o.ng biˆen ta.i nh˜u.ng no.i m`a c´ac pixel biˆen liˆen thˆong theo d¯u.`o.ng ch´eo.

Một phần của tài liệu Lập trình đồ họa máy tính ppsx (Trang 127 - 129)