- Python趣味創意編程
- 童晶
- 506字
- 2021-01-25 17:39:42
2.6 跟隨鼠標移動的圓圈
輸入并運行以下代碼,運行效果如圖2-19所示。
sketch_2_6_1.pyde
1 def setup():
2 size(600, 600)
3
4 def draw():
5 circle(300,300,100)
圖2-19
def setup(): 表示定義初始化函數,冒號后面的語句進行具體初始化的工作。size(600, 600)表示設定窗口寬600px、高600px。
def draw(): 表示定義繪制函數,冒號后面的語句進行具體繪制的工作。circle(300,300,100)表示在(300,300)處繪制了一個直徑為100的圓圈。
程序運行時僅運行一次setup()函數,進行相關的初始化設定。初始化后每幀重復執行draw()函數,進行相關的繪制工作。
提示
函數內的語句需要縮進,比如setup()函數內的size(600, 600)語句前面要空出一些,draw()函數內的circle(300,300,100)語句前面也要空出一些。Python中可以用空格,或者Tab鍵來實現代碼向右縮進。同一函數內部的多行語句,需要縮進一致,即最左邊需要對齊。
Processing還提供了兩個系統變量mouseX、mouseY,表示鼠標位置的X、Y坐標。讀者可以輸入并運行以下代碼,需要注意變量名的大小寫:
sketch_2_6_2.pyde
1 def setup():
2 size(600, 600)
3
4 def draw():
5 circle(mouseX,mouseY,100)
circle(mouseX,mouseY,100)在鼠標位置處繪制直徑為100的圓。由于draw()函數每幀重復執行,當鼠標在窗口中移動時,會在不同位置繪制相應的圓圈,如圖2-20所示。
圖2-20
如果想畫面中只顯示一個圓圈跟隨鼠標移動,可以在draw()函數中添加background()函數:
sketch_2_6_3.pyde
1 def setup():
2 size(600, 600)
3
4 def draw():
5 background(200)
6 circle(mouseX,mouseY,100)
draw()函數每次繪制時,首先用灰色填充整個畫面,然后在鼠標位置處繪制一個圓圈,效果如圖2-21所示。
圖2-21
推薦閱讀
- Hands-On Machine Learning with scikit:learn and Scientific Python Toolkits
- PostgreSQL for Data Architects
- Oracle Database 12c Security Cookbook
- 零基礎學Python數據分析(升級版)
- ASP.NET 3.5程序設計與項目實踐
- 數據結構習題解析與實驗指導
- Mastering React
- Go語言入門經典
- Node.js應用開發
- Docker on Windows
- Web程序設計與架構
- Developing RESTful Web Services with Jersey 2.0
- 微信小程序開發圖解案例教程:附精講視頻(第3版)
- Learning RxJava
- 數據結構:C語言描述(融媒體版)