- Python趣味創(chuàng)意編程
- 童晶
- 476字
- 2021-01-25 17:39:42
2.8 轉(zhuǎn)動眼珠的圓臉
以下代碼用圓圈繪制一個(gè)如圖2-28所示的圓臉,讀者可以嘗試?yán)斫猓?/p>
sketch_2_8_1.pyde
1 def setup():
2 size(800, 600)
3
4 def draw():
5 background(255)
6 fill(255)
7 circle(400, 300, 500)
8 circle(305, 180, 180)
9 circle(495, 180, 180)
10 circle(400, 300, 40)
11 circle(400, 420, 140)
12 fill(0)
13 circle(275, 180, 110)
14 circle(465, 180, 110)
圖2-28
添加代碼,讓眼珠隨著鼠標(biāo)而轉(zhuǎn)動:
sketch_2_8_2.pyde
1 def setup():
2 size(800, 600)
3
4 def draw():
5 background(255)
6 fill(255)
7 circle(400, 300, 500)
8 circle(305, 180, 180)
9 circle(495, 180, 180)
10 circle(400, 300, 40)
11 circle(400, 420, 140)
12 fill(0)
13 x1 = map(mouseX,0,width,280,330)
14 y1 = map(mouseY,0,height,155,195)
15 circle(x1, y1, 110)
16 x2 = map(mouseX,0,width,470,520)
17 y2 = map(mouseY,0,height,155,195)
18 circle(x2, y2, 110)
當(dāng)我們的代碼比較多時(shí),可以適當(dāng)加一些注釋。所謂注釋,就是一些說明的文字,不參與程序運(yùn)行。注釋的格式是“# 注釋內(nèi)容”。以下為加上注釋的完整代碼,這樣就可以比較清楚地了解各種代碼的功能、變量的含義等信息:
sketch_2_8_3.pyde
1 def setup(): # 初始化函數(shù),僅運(yùn)行一次
2 size(800, 600) # 設(shè)定畫面寬度、高度
3
4 def draw(): # 繪制函數(shù),每幀重復(fù)運(yùn)行
5 background(255) # 設(shè)置白色背景,并覆蓋整個(gè)畫面
6 fill(255) # 設(shè)置填充色為白色(默認(rèn)黑色線條)
7 circle(400, 300, 500) # 繪制圓臉
8 circle(305, 180, 180) # 繪制左眼邊框
9 circle(495, 180, 180) # 繪制右眼邊框
10 circle(400, 300, 40) # 繪制鼻子
11 circle(400, 420, 140) # 繪制嘴巴
12 fill(0) # 設(shè)置填充色為黑色(用于繪制眼珠)
13 # 將鼠標(biāo)位置映射為左眼珠坐標(biāo)
14 x1 = map(mouseX,0,width,280,330)
15 y1 = map(mouseY,0,height,155,195)
16 circle(x1, y1, 110) # 繪制左眼珠
17 # 將鼠標(biāo)位置映射為右眼珠坐標(biāo)
18 x2 = map(mouseX,0,width,470,520)
19 y2 = map(mouseY,0,height,155,195)
20 circle(x2, y2, 110) # 繪制右眼珠
推薦閱讀
- C及C++程序設(shè)計(jì)(第4版)
- 零基礎(chǔ)學(xué)Visual C++第3版
- Hands-On Machine Learning with scikit:learn and Scientific Python Toolkits
- Ceph Cookbook
- 編程卓越之道(卷3):軟件工程化
- Java Web開發(fā)之道
- 趣學(xué)Python算法100例
- RTC程序設(shè)計(jì):實(shí)時(shí)音視頻權(quán)威指南
- Oracle BAM 11gR1 Handbook
- Quarkus實(shí)踐指南:構(gòu)建新一代的Kubernetes原生Java微服務(wù)
- LabVIEW虛擬儀器入門與測控應(yīng)用100例
- Scratch從入門到精通
- Mastering PowerCLI
- Dart:Scalable Application Development
- 用Go語言自制編譯器