Computer Graphics Report Of course experiment
課程實計算機圖形學驗 報 告
實驗題目 利用C語言圖形函數繪圖 班 級 姓 名 學 号
指導教師 日 期
實驗
實驗說明 1 利用C語言圖形函數繪圖
試驗目的: 掌握TurboC語言圖形函數的使用和學會繪制一般圖形。
試驗地點: 教九樓401 數學系機房
實驗要求(Direction):1. 每個學生單獨完成;2.開發語言為TurboC或C++,也可使用其它語言;3.請在自己的實驗報告上寫明姓名、學号、班級;4.每次交的實驗報告内容包括:題目、試驗目的和意義、程式制作步驟、主程式、運作結果圖以及參考檔案;5. 自己保留一份可執行程式,考試前統一檢查和上交。
實驗内容
實驗題一
1.1實驗題目
用如下圖1所示,圖中最大正n邊形的外接圓半徑為R,旋轉該正n邊形,每次旋轉θ角度,旋轉後的的n邊形頂點落在前一個正六邊形的邊上,共旋轉N次,請上機程式設計繪制N+1個外接圓半徑逐漸縮小且旋轉的正n邊形。要求:(1) n、R、N、θ要求可以人為自由控制輸入;(2)N+1個正六邊形的中心(即外接圓的圓心)在顯示螢幕中心。
1.2實驗目的和意義
-圖形學課程實驗報告- - 1 -
并熟練運用圖形坐标的設定,包括定點、讀取光标、讀取x和y軸的最大值以及圖形 顔色的設定。
1.3程式制作步驟(包括算法思想、算法流程圖等)
1.自動搜尋顯示器類型和顯示模式,初始化圖形系統,通過printf、scanf語句控制半徑
确定出多邊形N的各個頂點坐标,然後利用劃線函數line(),連接配接相鄰兩點,即形成一個正多邊形。
标 。公式如下:
然後與第二步相同,利用劃線函數line(),連接配接形成又一個旋轉過的正多邊形,這樣就形成了所要繪制的圖形;
1.4主程式
-圖形學課程實驗報告- - 2 -
-圖形學課程實驗報告- - 3 -
- 4 - -圖形學課程實驗報告-
1.5運作結果圖
圖1.5.1輸入n邊形資訊運作結果截圖
-圖形學課程實驗報告- - 5 -
圖1.5.2 n邊形運作結果截圖
實驗題二
2.1實驗題目
請繪制一個圖:螢幕中央有一個半徑為R1=160的大圓和一個同心的且半徑為R2=120的小圓,同時在大圓和小圓中間均勻分布着12個與大圓和小圓相切的圓。如下圖2所示:
要求:(1) 分别用12種不同的顔色和填充模式填充12個小圓;(2)用自定義模式填充中間小圓,且用漫延填充方法填充;(3) 用自定義模式填充中間小圓時,填充模式圖案自己設計。例如,用字母A 、字母B、字母C填充圖案可設計為:
2.2實驗目的和意義
來填充圓;
2.學會用自定義模式填充指定圓,并且用漫延填充方法填充;
3.學會用自定義圖案來填充指定圓。
2.3程式制作步驟(包括算法思想、算法流程圖等)
1.輸入所要求環繞的小圓的個數n,設定畫筆顔色,利用circle()畫半徑為160的大圓,然後畫半徑為120的小圓并按照輸入的模式m選擇相應的填充模式。
-圖形學課程實驗報告- - 6 -
2.4主程式
- 7 - -圖形學課程實驗報告-
- 8 - -圖形學課程實驗報告-
2.5運作結果圖
圖2.5.1圓個數為14時的F填充
實驗題三
3.1實驗題目
自選題目:
(1)請編寫一動畫:繪制上述實驗2中的圖形,并要求:
? 1.讓圖案中的12個小圓按順時針或逆時針方向不停地旋轉;
? 2.半徑為R2=120的小圓用黑色和實填充模式填充,并在小圓内繪制一些閃 爍的星星(可參考課本P81 例3.27)。或者用不同的顔色和填充模式不停 地填充小圓,産生動畫效果。
(2)請編寫一動畫:實作實驗1中的圖形由大到小(由小到大)旋轉的動态過程。
(3)編寫一個描述一倆自行車在一公路上由左向右行駛的程式,運作效果圖大緻
如圖三所示。(可參考課本P74 例3.21)
-圖形學課程實驗報告- - 9 -
(4)試着自行設計一個動畫或美術圖案,并且上機程式設計實作。
(5)構造一種類似廣告片效果,一幅或者多幅圖形圖像逐個顯示出來,并配以文
字說明,顔色變化等。
要求:對于實驗3中的5個小題,選擇其中一個上機程式設計實作即可。
3.2實驗目的和意義
些簡單的繪圖函數。
3.3程式制作步驟(包括算法思想、算法流程圖等)
1.自動搜尋顯示器類型和顯示模式,初始化圖形系統并設定背景顔色以及畫筆顔色;
3.4主程式 - 10 - -圖形學課程實驗報告-
-圖形學課程實驗報告- - 11 -
3.5運作結果圖
圖3.5.1自行車在起點
圖3.5.1自行車在中間
-圖形學課程實驗報告- - 12 -
圖3.5.1自行車在中點
參考文獻
本次實驗總結或體會
課的興趣;但同時我也