Download presentation
Presentation is loading. Please wait.
1
Drawing Projects On Hour of Code / Scratch / Python turtle
課程實施:8-10年級學生 課程時數:6-8小時 學習單元:模組化程式設計、遞迴函式
2
碎形~尋找大自然的密碼 Fractals – code in nature
大自然界存在的 神秘圖形規律
3
專題簡述 本專題引導學生觀察多種碎形圖形的產生規則(rules),學習尋找圖形樣式 (finding patterns)。透過對碎形(fractals)的自我相似性與建構步驟的認識, 鼓勵學生自行創造圖形規則,設計屬於自己的碎形。 專題重點為重複結構與與函式的學習。活動中透過重複樣式的辨識與碎形 圖形的建構,讓學生體驗分解問題、樣式辨識、模型化與抽象化等運算思 維歷程,處理複雜而龐大的任務。 Concepts covered:數學、幾何、碎形、藝術、設計、自我相似性、程式 設計、迴圈、疊代、函式、遞迴函式、運算思維
4
<第一堂> Fractals & patterns
學習活動 1:尋找大自然的密碼 code in nature
5
Amazing fractals found in nature
自然界中的各式神秘碎形,引導學生思考其規律 Photo: Jitze/Flickr Photo: Rum Bucolic Ape/Flickr Photo: Aidan M. Grey/Flickr
6
Amazing fractals found in nature
自然界中的各式神秘碎形,引導學生思考其規律 Photo: Wikimedia Commons Photo: Wikimedia Commons Photo: Burroblando/Flickr
7
分組活動:尋找大自然界存在的神秘圖形規律
請討論以上圖形的特徵與規律 (至少寫3個) 。 請整理寫下各組分享的圖形特 徵與規律
8
分組活動: 討論碎形的樣式(patterns)與形成規律(modeling)
9
分組活動: 討論碎形的樣式(patterns)與形成規律(modeling)
10
分組活動: 討論碎形的樣式(patterns)與形成規律(modeling)
11
Fractals 碎形幾何
12
What is fractal? 碎形(Fractal)被定義為「一個零碎的幾何形狀,可以分成數個部分,且每 一部分都(至少近似地)是整體縮小後的形狀」,即具有自我相似的性質。
13
碎形(Fractal) 數學家曼德布洛特(Benoit Mandelbrot)在七O年代所發展出的幾 何概念
提供了藝術設計、科學理論、自然景象三 方面的新關聯與新詮釋。 碎形的深刻內涵促成了不同領域的結合。 Fig 1. Benoit Mandelbrot
14
碎形- 自我相似性 self-similarity
自然界隨處可見的雪花晶體、樹幹枝椏、血管分支、海岸沿線、雲彩的邊 緣以及天空的閃電——這些都是碎形 特徵:都是結構上一層又一層相類似的重複。 觀察一棵蒼茂大樹與它主幹上的樹枝、樹枝上的枝杈、葉脈的紋路 它們的形狀非常雷同,僅僅有大小與方位上的差異。 這種關係在幾何學上稱為自我相似性,是碎形研究的核心。
15
蕨葉碎形、樹枝碎形 小藍框是大藍框的標準縮小版 小藍框是由更多、更小的相似 細節所構成, 把一整體縮小之後再嵌入自身
16
<第二堂> Draw patterns
學習活動 2:建構自己的碎形規則與碎形圖
17
一、起始元與生成元疊代法 在繪製碎形的方法中,「起始元與生成元疊代法(Generator Iteration Method)」是最為直觀與最容易操作的 「完全自我相似」(Strict Self-Similarity)碎形 「完全自我相似」(Strict Self-Similarity)碎形疊代法必須指定 起始元(Initiator)與生成元(Generator)。
18
起始元與生成元 起始元:是碎形一開始的圖形,起始元是由單一的或幾個自我 相似的幾何單元(例如線段、三角形或矩形……等等)所組成。
生成元:是起始元中的每一個自我相似的幾何單元下一次疊代 的圖形。
19
謝爾賓斯基(Sierpinski)三角形
以 Sierpinski Gasket 為例 起始元與生成元如圖所示,起始元是由單一 的實心三角形幾何單元所組成。 從下面的步驟會發現,顯然碎形的第零步驟 就是起始元,而第一步驟則是以生成元來取 代起始元中所有的幾何單元,而第二步驟便 是以生成元來取代第一步驟中所有的幾何單 元,接下來的步驟,即是以相同的方法重複 疊代下去。
20
謝爾賓斯基三角形
21
其他例子-1
22
其他例子-2
23
Koch Curve (Snowflake Curve)
起始元:由單一的線段幾何單元所組成的 生成元:生成元本身就定義了碎形的繪製規則與碎形的特徵。將在每一個 步驟裡取代這些線段單元。
24
Koch Curve (Snowflake Curve)
25
分組任務:建構碎形
26
<第三堂> Drawing Patterns by programming
學習活動 3:Geometric drawing by programming
27
藝術家(Artist):運用已知程式積木完成繪圖任務
28
Draw shapes in Python Turtle Graphics
from turtle import * canvas = Screen() sarah = Turtle() for i in range(4): #repeat four times sarah.forward(50) sarah.left(90) canvas.exitonclick() from turtle import * canvas = Screen() sarah = Turtle() sarah.forward(50) sarah.left(90) canvas.exitonclick()
29
<第四堂> Drawing Fractals by programming
30
程式實作與觀察-繪製Koch Curve 討論:程式呼叫 f(Koch, 150, 2) 時,請畫下其f函式呼叫的歷程
31
程式實作與觀察 繪製蕨葉(Fern),試修改生長規則另生成不同蕨葉 繪製碎形樹,試修改生長規則另生成不同形態的樹
32
建構碎形圖規則,以程式繪製碎形圖
Similar presentations