THINK JAVA: CÁCH SUY NGHĨ NHƯ NHÀ KHOA HỌC MÁY TÍNH - Trang 153

thêm vào đôi tai. Đ làm cho mã l nh d đ c h n, hãy dùng

ễ ọ ơ

Rectangle (hình ch nh t) đ bi u di n các

ể ể

hình bao.
Sau đây là m t ph

ng th c nh n vào m t Rectangle r i kích ho t

ươ

ạ fillOval.

public void

boxOval(Graphics g, Rectangle bb) {

g.fillOval(bb.x, bb.y, bb.width, bb.height);

}

Và sau đây là m t ph

ng th c đ v Mickey:

ươ

ứ ể ẽ

public void

mickey(Graphics g, Rectangle bb) {

boxOval(g, bb);

int

dx = bb.width/2;

int

dy = bb.height/2;

Rectangle half =

new

Rectangle(bb.x, bb.y, dx, dy);

half.translate(-dx/2, -dy/2);

boxOval(g, half);

half.translate(dx*2, 0);

boxOval(g, half);

}

Dòng th nh t v khuôn m t. Ba dòng ti p theo t o nên m t hình ch nh t nh h n làm đôi tai. Ta d ch

ấ ẽ

ế

ỏ ơ

chuy n hình ch nh t này lên trên và bên trái đ t o thành tai th nh t, sau đó d ch sang ph i làm tai

ể ạ

th hai.

K t qu trông s nh sau:

ế

ư

B n có th t i mã l nh v t

ể ả

ề ừ http://thinkapjava.com/code/Mickey.java.

A.6 Thu t ng

t a đ :

M t bi n hay giá tr quy đ nh v trí trong m t c a s đ h a hai chi u.

ế

ộ ử ổ ồ ọ

đi m nh:

ể ả

Đ n v đo t a đ .

ơ

hình bao: