幾何畫板與分形_第1頁
幾何畫板與分形_第2頁
幾何畫板與分形_第3頁
幾何畫板與分形_第4頁
幾何畫板與分形_第5頁
已閱讀5頁,還剩9頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、幾何畫板迭代與深度迭代迭代是幾何畫板中一個很有趣的功能,它相當于程序設計的遞歸算法。通俗的講就是用自身的結構來描述自身。遞歸算法的特點是書寫簡單,容易理解,但是運算消耗內存較大。迭代:按一定的迭代規則,從原象到初象的反復映射過程。原象:產生迭代序列的初始對象,通常稱為“種子”。 初象:原象經過一系列變換操作而得到的象。與原象是相對概念。更具體一點,在代數學中,如計算數列1,3,5,7,9.的第n項。我們知道,所以迭代的規則就是后一項等于前一項加2。以1作為原像,3作為初像,迭代一次后得到5,再迭代一次得到7,以此類推。在幾何學中,迭代使一組對象產生一組新的對象。上圖中A、B、C、D、

2、E、F,各點相距1.88cm,那么怎么由A點和B點得到其它各點呢?我們可以發現其中的規律就是從左到右,每一個點相當于前面一個點向右平移了1.88cm。所以我們以A點作為原像,B點作為初像,迭代一次得到B點,二次為C點,以此類推。迭代像就是迭代操作產生的象的序列,而迭代深度是指迭代的次數。利用幾何畫板的深度迭代功能可以畫出許多美妙的分形圖形,并以幾何畫板為基礎來研究分刑圖形面積,周長的變化。一、 謝爾賓斯基三角形利用幾何畫板畫法流程:(1)先任意畫好一個三角形ABC,接著構造線段AB,BC,CA的中點D,E,F,選擇點D,E,F,再選擇菜單“構造”、“三角形內部”。(2)在“圖表”中“新建參數”

3、為n=3依次選擇點A,8,C和參數n,按住shift鍵不放后選擇“變換”中的“深度迭代”。(3)在初象中依次選A,D和F點,再添加新的映射(按Ctrl+A),映像2中依次選D,B和E點,再按Ctrl+A,依次選F,E和C點。最后選“迭代”,得到謝爾賓斯基三角形。選擇n按“+”或“一”,三角形就進行了迭代變化。n=1 n=2 n=3 n=4n=5隨著有色三角形越來越多,空白三角形越來越少。 我們若用有色三角形表示去掉的部分,,則剩下的面積可能趨向于0,而剩下部分的周長呢,,設分形級數為n,初始邊長為1, 新產生的小三角形數量為,一個新小三角形邊長為,1謝爾賓斯基三角形周長為, 謝爾賓斯基三角形面

4、積為;當n時,顯然其周長趨向于無窮大, 面積趨向于零。著名的埃菲爾鐵塔正是以它作為平面圖的. 因為這種三角形結構可以節省材料而且強度大, 雖然鐵塔并沒有把分形進行到無窮, 但是它已經能在這種條件下完成了重力的轉移, 充分體現了這項工程的精彩, 同時也顯示了謝爾賓斯基三角形無盡的魅力.二、 分形樹分形樹制作流程:(1)畫好線段AB,取中點C,雙擊B點,以B為旋轉中心將C旋轉120。得E點,旋轉一120。得D點。(2)新建參數n=3,依次選點A,B和n,用“深度迭代”將 ,B映射到B,E和B,D就可以了然后可以改變參數,觀看分形樹的生長。n=2n=3n=101.在垂直方向上畫線段AB,在AB左上區

5、域任取一點C。2.度量CB,BA的長度,計算CB/BA;度量CBA的大小。3.雙擊C點作為旋轉中心,旋轉角度為CBA,旋轉B得到點E;繼續以CB/BA為縮放比例,E點縮為F點;雙擊線段CB作為標記鏡面,得到F點關于線段CB的對稱點G。連接GC,FC。4.雙擊線段AB作為標記鏡面,得到C、F、G關于線段AB的對稱點D、H、I,連接BD、HD、ID。5.新建參數n=3。順次選擇A、B、C三點和參數n,作深度迭代,(A,B,C) (B,C,G),(B,C,F),(B,D,H),(B,D,I)。n=2n=3n=4n=5畢達哥拉斯樹【步驟】1.在屏幕上以任取兩點A和B,作正方形ABCD,以CD為直徑作圓

6、O,取半圓弧OCD,在該弧上任取一點E,接CE,DE。隱藏不必要的對象。 2填充四邊形ABCD,度量ABCD的面積。選擇四邊形和度量結果,單擊【顯示】【顏色】【參數】。則四邊形的顏色會隨它的面積變化而變化。3.新建參數n4,選擇A、B和n,作深度迭代,(A,B)(D,E),(E,C)。n=3n=4n=5n=10n=20L分形樹1、構造初始元作始元豎直線段AB,在AB上作兩點A1,A4,以A1為中心分別按角度36度旋轉B得到B1,按角度126度旋轉A4得到B4,以B為中心分別按角度-171度旋轉A1為B2,按角度144度旋轉A1為B3,連接A1B1、BB2、BB3、A4B4、得到以下生成元生成元

7、2、刪除生成元中的四枝杈線段,顯示出初始元AB,新建參數n=5,以n為深度,將生成元AB分別在A1B1,BB2,BB3,A4B4上執行深度迭代,隱藏各點得到L分形樹。n=6(L分形樹)以上方法所作的分形樹是線性(自相似)分形樹,其變換是相似變換,屬于確定型L分形,不能得到生動逼真的植物擬態圖形。要模擬出栩栩如生的植物形態,就要引入隨機L分形。1、 作始元做初始元豎直線段AB和線段CD,在CD上作點P,度量出點P在線段CD上的值,按下圖左側公式計算度量值。標記m1,以A為縮放中心B得A1,以B為縮放中心A得A4。標記m2,以A1為中心旋轉B得B1。標記m3,以B為中心旋轉A4得B2。標記m4,以

8、B為旋轉中心旋轉A1得B3;標記m5,以A4為標記中心旋轉A得B4,連接連接A1B1、BB2、BB3、A4B4、得到以下生成元生成元:2、刪除生成元中的四枝杈線段,顯示出初始元AB,新建參數n=5,以n為深度,將生成元AB分別在A1B1,BB2,BB3,A4B4上執行深度迭代,隱藏各點得到隨機分形樹。n=6(隨機分形下的L分形樹)檜樹分形小枝繪制檜樹分形小枝的生成元同Koch 曲線生成元的構造類似,檜樹分形小枝生成元的構造也是通過一定的規則對單位長線段F0 進行修改變換而得到。具體變換規則如下:如下圖 所示,檜樹分形小枝的生成元由五條長度相等的線段組成,設每條線段長度為r,第一條線段AC 和最

9、后一條線段EB 與水平線的夾角相等,都是10°,AC 左端點A 與F0 左端點重合,EB 右端點B 與F0 右端點重合,CD與CE 成 60°角,EF 與EB 成60°角。具體C+程序設計語言如下:#include<graphics.h>/*添加繪圖函數頭文件*/ #include<cmath>/*添加數學函數頭文件*/ #include<iostream>#include<conio.h>using namespace std;#define pi 3.1415926 void huishu(double x0,

10、double y0, double x1, double y1, int k);int main(void)int n, gdriver = DETECT, gmode;/*定義迭代次數n*/printf("Please input the value of the positive integer n (n<9):");cin>>n;/*輸入迭代次數n*/initgraph(&gdriver, &gmode, "");/*圖形系統初始化*/setcolor(GREEN);huishu(50, 250, 550, 250

11、, n); /*畫檜樹分形小枝*/getch();closegraph();return 0;void huishu(double x0, double y0, double x1, double y1, int k)double x2, y2, x3, y3, x4, y4, x5, y5, x11, y11, x22, y22;double r, t;t = pi / 18;r = (2 * cos(t) - sqrt(4 * cos(t) *cos(t) - 3.0) / 3.0; /* r的計算式*/x11 = r*x1 + (1 - r)*x0;y11 = r*y1 + (1 - r

12、)*y0;x22 = r*x0 + (1 - r)*x1;y22 = r*y0 + (1 - r)*y1;x2 = (x11 - x0)*cos(t) - (y11 - y0)*sin(t) + x0;y2 = (x11 - x0)*sin(t) + (y11 - y0)*cos(t) + y0;x4 = (x22 - x1)*cos(t) - (y22 - y1)*sin(t) + x1;y4 = (x22 - x1)*sin(t) + (y22 - y1)*cos(t) + y1;x3 = (x4 - x2)*cos(6 * t) - (y4 - y2)*sin(6 * t) + x2;y3 = (x4 - x2)*sin(6 * t) + (y4 - y2)*cos(6 * t) + y2;x5 = (x1 - x4)*cos(-6 * t) - (y1 - y4)*sin(-6 * t) + x4;y5 = (x1 - x4)*sin(-6 * t) + (y1 - y4)*cos(-6 * t) + y4;if (k > 1) huishu(x0, y0, x2, y2, k - 1); huishu(x2, y2, x3, y3, k - 1);huishu(x2, y2, x4, y4,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論