Page 180 - Em Học Python
P. 180
TÔ MÀU
Hàm color nhận ba tham số. Đầu tiên là tỉ lệ màu đỏ, rồi đến tỉ lệ màu xanh lá, và
thứ ba là tỉ lệ màu xanh dương. Ví dụ, để xe có màu đỏ tươi, ta dùng color(1, 0, 0), nghĩa
là dùng màu đỏ 100 phần trăm.
Ba màu đỏ, xanh lá, xanh dương này được gọi là RGB ⟨Red -
Green - Blue⟩. Đây chính là cách màn hình máy tính hiển thị ra các
màu sắc khác nhau, và khi các màu này được pha với nhau ta sẽ có
nhiều màu hơn, như kiểu khi pha xanh dương với đỏ ta có màu tím,
còn pha vàng với đỏ ta có màu cam vậy. Các màu đỏ, xanh lá và xanh dương được gọi là
màu chuẩn ⟨primary color⟩ vì ta không thể dùng các màu khác để tạo ra ba màu này được.
Mặc dù trên màn hình máy tính ta không dùng màu thật để pha (người ta thực ra sử
dụng ánh sáng để làm việc đó), nhưng để hiểu được các công thức pha chế màu RGB, em có
thể hình dung ra ta có ba lọ màu: một đỏ, một xanh lá và một xanh dương. Các lọ ban đầu
đều đầy, và ta tạm gán cho chúng giá trị là 1 (hoặc 100 phần trăm). Sau đó trộn toàn bộ màu
đỏ với toàn bộ màu xanh lá ra một cái lọ khác và khuấy đều lên, ta sẽ có màu vàng (tức là tỉ
lệ 1 và 1, hay 100 phần trăm mỗi màu).
Quay về thế giới lập trình. Để rùa vẽ được một hình tròn màu vàng, ta sẽ sử dụng 100
phần trăm màu đỏ, 100 phần trăm màu xanh lá và không có xanh dương, như thế này:
>>> t.color(1,1,0)
>>> t.begin_fill()
>>> t.circle(50)
>>> t.end_fill()
Ba số 1, 1, 0 ở dòng đầu tiên đại diện cho 100 phần trăm đỏ, 100 phần trăm xanh
lá, và 0 phần trăm xanh dương. Dòng thứ hai, ta bảo rùa đổi sang màu RGB vừa nãy với
t.begin_fill, rồi ta bảo nó vẽ một hình tròn với t.circle. Dòng cuối cùng, end_fill nói
rùa hãy thực sự đổ màu vào toàn bộ hình nó vừa vẽ.
154 Chương 11