kittenblock在很早的版本迭代中就引入了python3的引擎,但是一直只是一個引擎的狀態。就像我們給大家準備了一個廚房,但是沒給大家對應的菜譜,而這個系列的教程就是我們Kittenblock中的python3的cookbook。
海龜作圖的準備工作
我們打算以logo語言中最經典的海龜作圖來開始我們的教程,logo語言中的海龜作圖功能可以使用python全部實現並且能夠有更好的效果。
但是開始前我們需要做一些準備工作,相當於給海龜作圖提供一個開發的基本環境。
新建項目
首先新建一個空的項目,在背景菜單(backdrop)中選擇數學座標系作為背景。
由於scratch3中沒有海龜的素材庫,我們就用一個小bug甲蟲代替海龜,這樣我們的項目就變成了bug作圖了:)
- 將默認的貓咪精靈刪除
- 在精靈庫中找到bettle並添加
- 並且在精靈設置選項中將bug的比例調節到20%,位置設置到x=0,y=0
- 由於我們使用了作圖的功能,我們需要從擴展插件中添加畫筆(pen)插件
- 將項目保存為turtlebasic.sb3
我們的初始項目效果如下:
第一個圖形化的繪圖程序
我們先拖入如下的圖形化程序
接下來講解一下每個方塊的用意:
- 前兩個方塊是保證bug的初始位置和朝向,因為我們程序重複調試可能讓bug處在一些奇怪的位置和朝向
- 接下來我們將舞臺清除,保存我們每次開始都是一張嶄新的畫布
- 之後設置筆的大小和顏色,大家可以根據自己的喜好調整
- 從落筆開始每次小bug移動的過程中都會留下對應的軌跡,這就是海龜繪圖的核心思想
我們點擊舞臺上的綠旗幟並執行上述代碼,大家可以看看效果
將圖形化方塊轉換成python並重新執行
我們點擊工作區上方的python按鈕進入python代碼模式,首次進入python模式會自動將圖形化方塊轉換成python代碼。
後續需要大家自行點擊**>**這個按鈕進行轉換,因為這個操作會覆蓋掉你python編輯區的勞動成果。
大家可以點擊綠色的旗幟啟動python程序
注意: 在python編輯器模式下點擊綠旗幟都是執行python的代碼,而不是原本舞臺的代碼
但是好像跟之前圖形化方塊的效果一樣啊。。 沒關係我們可以改造下我們的程序
為了方便大家學習python程序,kittenblock中可以將方塊直接拖到python代碼編輯器並實時生成對應的python代碼,需要注意的是代碼插入的位置。
我們將代碼改造成如下,並重新點擊綠旗幟
# -*- coding: utf-8 -*-
import _env, time, random
from scratch3 import *
Beetle = Sprite("Beetle")
x = 0
Beetle.gotoXY(0, 0)
Beetle.direction(90)
Beetle.clear()
Beetle.setPenSize(3)
Beetle.setColor("#ff0000")
Beetle.penDown()
Beetle.move(50)
Beetle.turnLeft(90)
Beetle.move(50)
Beetle.turnLeft(90)
Beetle.move(50)
最後大家記得保存程序,那麼我的python代碼到底保存到哪裡去了呢?
其實每一個sb3文件都是一個壓縮包,大家可以把後綴名從.sb3改為.zip,用系統的解壓工具打開就可以看到裡面的東西。而你剛剛寫的python代碼就保存為stagepy.py這個文件中。
好了,這節就到這裡結束,其實目的是大家對kittenblock的python3環境有個大致的瞭解。下一節開始我們會循序漸進地詳細講解海龜作圖。
閱讀更多 KittenBot小喵科技 的文章