資源描述:
《海龜畫圖講課資料.pptx》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、C程序設(shè)計基礎(chǔ)——海龜畫圖林大經(jīng)管學(xué)院瞿華海龜畫圖建立海龜畫圖項目基本命令循環(huán)與基本圖形一、建立海龜畫圖項目選擇“C語言程序設(shè)計”選項卡中的“C語言-海龜作圖”注意填寫項目名稱一、建立海龜畫圖項目選擇項目文件(.dev文件)的保存位置最好將每個項目的文件放在單獨的目錄中可使用該按鈕創(chuàng)建新目錄一、建立海龜畫圖項目項目向?qū)詣訛轫椖可梢粋€可以運行的demo程序。直接在該程序基礎(chǔ)上進行修改即可。一、建立海龜畫圖項目注意:打開已有項目時,要打開項目文件(.dev文件)二、基本命令海龜作圖(TurtleGraphics)的基本思想是這樣的:屏幕上
2、有一只小海龜,我們可以給它下命令在屏幕上爬行海龜爬行的時候,會在屏幕上留下痕跡,從而產(chǎn)生圖形。二、基本命令程序初始化和控制相關(guān):initWorld(width,height);設(shè)置繪圖窗口大小為width*heightsetSpeed(x);設(shè)置海龜?shù)呐佬兴俣龋?為最慢,1000為最快setImmediate(x);設(shè)置是否顯示動畫。0為顯示,1為不顯示。缺省為顯示動畫pause();程序等待用戶按任意鍵setRewind(x);設(shè)置海龜爬到屏幕邊緣時是否自動回繞。0為自動回繞,1為不自動回繞。缺省為自動回繞二、基本命令海龜運動相關(guān):fd(
3、x);forward(x);向前爬行x個像素(x可以為小數(shù))bk(x);backward(x);向后爬行x個像素lt(degree);leftTurn(degree);海龜向左轉(zhuǎn)degree度(degree可以為小數(shù))rt(double);rightTurn(degree);海龜向右轉(zhuǎn)degree度home();海龜返回起始點(屏幕正中央)voidcs();voidclear();voidclearScreen();海龜返回起始點,同時清除屏幕上的所有痕跡二、基本命令畫筆相關(guān):voidpenUp();voidpu();抬筆,此時海龜爬行不留
4、痕跡voidpd();voidpenDown();落筆,此時海龜爬行留痕跡voidsetPenColor(color_tcolor);設(shè)置畫筆的顏色常用顏色常量:BLACK黑色BLUE藍色GREEN綠色CYAN青色RED紅色MAGENTA紫色BROWN棕色LIGHTGRAY淺灰色DARKGRAY深灰色LIGHTBLUE淺藍色LIGHTGREEN淺綠色LIGHTCYAN淺青色LIGHTRED淺紅色LIGHTMAGENTA淺紫色YELLOW黃色WHITE白色2.1簡單示例forward(100);rightTurn(90);forward(10
5、0);rightTurn(90);forward(100);rightTurn(90);forward(100);rightTurn(90);繪制正方形2.1.1正方形繪制for(i=1;i<=4;i++){forward(100);rightTurn(90);}繪制正方形(使用循環(huán))2.1.2三角形繪制繪制三角形,思考:每次繪制完一條邊后,海龜應(yīng)該轉(zhuǎn)多少度?應(yīng)循環(huán)多少次?for(i=1;i<=3;i++){forward(100);rightTurn(120);}2.1.2三角形繪制思考(見下圖):如果想繪制一個底邊和窗口下沿平行的三角形
6、,該怎么辦?希望畫完圖后,海龜?shù)念^部還是指向正上方,該怎么辦?rightTurn(30);for(i=1;i<=3;i++){forward(100);rightTurn(120);}leftTurn(30);2.1.3復(fù)合圖形思考:想繪制如下的圖形,該怎么辦?三、循環(huán)繪圖使用循環(huán)和多重循環(huán),可以繪制出更多美麗的圖案3.1美麗花樣forward(100);rightTurn(90);forward(100);rightTurn(90);forward(50);rightTurn(90);forward(50);rightTurn(90);f
7、orward(100);rightTurn(90);forward(25);rightTurn(90);forward(25);rightTurn(90);forward(50);3.1美麗花樣for(i=1;i<=4;i++){forward(100);rightTurn(90);forward(100);rightTurn(90);forward(50);rightTurn(90);forward(50);rightTurn(90);forward(100);rightTurn(90);forward(25);rightTurn(90)
8、;forward(25);rightTurn(90);forward(50);}循環(huán)4次3.1美麗花樣錯開一點距離和角度,不斷重復(fù)for(;;){forward(100);rig