MS Small Basic第七章: Fun with Shapes(玩形)(Part1: Introduction)

英文版使用手冊第七章標題為 “Fun with Shapes" , 中文版使用手冊翻譯為 “繪製圖形" , 翻譯並沒有錯, 但我考量本章前半段內容是第六章Beginning Graphics(圖形入門)的延伸, 運用撰寫圖形的概念去做些更有趣的事, 因此決定把 “Fun" 翻譯出來, 並借用 “完形心理學" (Gestalt Psychology)的 “完形" , 將本章標題譯為 “玩形" .

第七章的內容包含: (1)用For迴圈語句繪製一組大小逐漸遞增的矩形(Rectangle); (2)用For迴圈語句繪製一組大小逐漸遞增的圓形(Circle); (3)隨機圖案(Randomize); (4)分形或碎形(Fractals). 前三項依照使用手冊範例依樣畫葫蘆沒什麼問題, 努力一點尚可理解, 但最後一項碎形則是非常複雜的概念, 使用手冊輕描淡寫, 只給範例, 並很不負責任地丟下一句 “留待讀者自行探索" 就結束了.

第一次知道 “碎形" (fractal)這個詞是在高一的時候(遠目), 閱讀天下文化出版的一本有關數學的科普書, 之後學校的物理課本和數學課本也有簡略提到碎形的概念, 因為碎形在大自然真的無所不在. 為了喚起對碎形的記憶, 我虔誠地膜拜Google大神, 祂告訴我: “「碎形幾何學」是一門新數學,它能夠處理不規則、無定形且複雜的圖形,諸如樹木的分枝、海岸線、動物的犄角、河流分叉、山勢、螺貝圖、雲的形狀、樹葉、閃電等形狀,用我們所學的歐幾里得幾何學,無法說明這些特殊的形狀,但是這些外觀上極不規則的自然界複雜型態,都能夠以碎形幾何學來予以解釋。碎形幾何學,結合電腦正是解決這方面問題的利器。

這張圖非常酷! 用碎形的概念做美術設計

………. 碎形具有自相似性,「自相似性」是指某圖形的任意部分經放大或縮小後,仍然可以展現出原來的型態,也就是指整體圖形和部分圖形都具有相似型態。所以將碎形圖形無限放大,將會出現與原來圖形極相似的形像。自然界有多種形態都擁有碎形性,裁切密林或山水風景相片的某部分,將其貼在另一張風景相片上,則往往不會損傷我們對此張相片的印象,這就是具相似性的形態和圖形所擁有的特點。 在各種碎形圖形中,「曼德布洛特集合」(Mandelbrot set)是最有名的一個圖案,現在我們已經能運用電腦繪圖技術,以反覆代入方程式的方式計算結果來得到此圖形。" 看到這邊, 我決定不再繼續挖下去, 因為已經遠遠超出我能理解的範圍, 並且驗證我在第六章所言: 要學好程式, 國高中數學概念非常重要啊!! 因為數學非常重視邏輯, 學習程式語言也處處是邏輯, 雖然小時候數學還不錯, 但自從轉行主攻英文和語言之後, 已經七年時間完全沒碰數學, 現在談碎形像是在談古時候的東西.

既然搞不懂碎形, 就從最基礎的地方學起! 放棄第四項任務, 把前三項: (1)用For迴圈語句繪製一組大小逐漸遞增的矩形(Rectangle); (2)用For迴圈語句繪製一組大小逐漸遞增的圓形(Circle); (3)隨機圖案(Randomize) 搞懂就拍拍手了. 大致翻閱使用手冊的範例, 覺得不是很能理解, 於是繼續找找找, 看有沒有更基礎的東西可以補充先備知識, 於是我找到了微軟的 “初學者開發人員學習中心" , 算是MS Small Basic的線上自學教材, 全英文, 但英文到目前為止沒看到什麼錯誤, 不像使用手冊亂七八糟, 而且這裡的解釋說明比使用手冊詳盡, 更容易理解. 跟第七章Fun with Shapes相配合的應該是網站上Lesson 2.3: Exploring Shapes的部分. 但我想說既然是初學, 又完全沒有程式語言底子, 就應該學得更紮實, 因此決定把網站上整個Lesson 2都研讀完畢, 一邊複習Graphics(圖形), 一邊慢慢進入本章重點Shapes. Lesson 2內容有:

可以感覺得出來內容非常豐富, 如果要在一篇網誌裡全部打完可能會爆掉, 因此決定把學習內容和過程放在下一篇網誌.

廣告

About leeoxygen

吱吱喳喳,嚕嚕啦啦,嗯嗯啊啊.
本篇發表於 我的Small Basic學習記錄 並標籤為 , 。將永久鏈結加入書籤。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s