官术网_书友最值得收藏!

二、動手練:會織網的蜘蛛

(一)實驗目的

模仿蜘蛛織網的過程,一圈一圈地織出六邊形的網來。

(二)基本思路

蜘蛛網可以看成由許多同樣的幾何圖形構成:蜘蛛網的一圈為六邊形,一個六邊形可以分割成6個三角形;整個網可以看成六邊形的圈從里到外逐漸擴大形成。

(三)編程步驟

(1)角色設計

我們沒找到現成的“蜘蛛”角色,就用籃球代表蜘蛛了。

(2)變量設計

定義一個變量sideLength,表示邊長;邊長從0開始,逐步增加;每增加一次,就畫一個六邊形。這樣蜘蛛網就一圈一圈織出來了。

(3)過程定義與腳本展示

我們定義3個過程,就是新建3個積木塊(見圖7-3中左側部分),分別是:

1)Triangle積木

  • 功能:畫一個等邊三角形。
  • 形式參數:邊長length。
  • 過程描述:先沿著一個方向走length步,畫出第一條邊;然后右轉120°,再走length步,畫出第二條邊;最后再右轉120°,走length步,畫出第三條邊。這樣恰好回到出發點,也就是蜘蛛網的中心點。

2)Hexagon積木

  • 功能:畫一個六邊形。
  • 形式參數:邊長length。
  • 過程描述:先調用Triangle過程畫一個三角形;然后旋轉60°,再畫一個;這樣重復6次,就畫出六邊形來了。

3)SpiderWeb積木

  • 功能:畫蜘蛛網。
  • 形式參數:無。
  • 過程描述:我們先將邊長sideLength設置為0,然后重復增加sideLength,調用Hexagon積木畫邊長為sideLength的六邊形。這樣重復5次,一個5圈的蜘蛛網就織成了。

(四)實驗結果

圖7-4中顯示的是我們畫出來的蜘蛛網,漂亮吧?

078-1

圖7-4 畫蜘蛛網的程序及實驗結果

(五)思考與延伸

當然了,我們可以擴展SpiderWeb積木:增加兩個參數,分別表示蜘蛛網的圈數和兩圈之間的距離,這樣能夠更方便地控制畫幾圈、畫多密。

需要說明的是,這里是用畫三角形的方式畫蜘蛛網,并不是蜘蛛的真實織網方式。我上網查了,在自然界里,蜘蛛是先織出經線,再繞圈織出緯線。蜘蛛拉第一根經線是最費力的,要經過樹枝、草地等;為了避免被樹枝、草葉粘住,經線都是沒有黏性的,只有緯線才有黏性,好粘住飛蟲。不同的蜘蛛拉出的經線數目也不同,通常有二十幾根之多。

主站蜘蛛池模板: 临城县| 虞城县| 广河县| 拉孜县| 瑞安市| 伊川县| 阜阳市| 将乐县| 怀宁县| 左权县| 承德县| 灯塔市| 土默特右旗| 凤山县| 汉中市| 攀枝花市| 房产| 宣汉县| 永寿县| 彭州市| 平阳县| 泰兴市| 海淀区| 罗田县| 浏阳市| 全州县| 筠连县| 建平县| 阿尔山市| 镇江市| 伊吾县| 新绛县| 塔城市| 汕头市| 阳泉市| 聂拉木县| 五寨县| 淄博市| 东城区| 原平市| 鹤山市|