計算機圖形學實驗指導書

2021-08-20 19:32:23 字數 5148 閱讀 8894

佛山科學技術學院

李曉東編

電信學院計算機系

2023年 11月

實驗型別:設計性

實驗類別:專業實驗

實驗目的

1. 通過實驗,進一步理解直線段掃瞄轉換的dda演算法、中點bresenham演算法及bresenham演算法的基本原理;

2. 掌握以上演算法生成直線段的基本過程;

3. 通過程式設計,會在c/c++環境下完成用dda演算法、中點bresenham演算法及bresenham演算法對任意直線段的掃瞄轉換。

實驗裝置及實驗環境

計算機(每人一台)

vc++6.0或其他c/c++語言程式設計環境

實驗學時:2學時

實驗內容

用dda演算法中點bresenham演算法及bresenham演算法實現任意給定兩點的直線段的繪製(直線寬度和線型可自定)。

實驗步驟:

1、 複習有關演算法的基本原理,明確實驗目的和要求;

2、 依據演算法思想,繪製程式流程圖;

3、 設計程式介面,要求操作方便;

4、 用c/c++語言編寫源程式並除錯、執行;

5、 分析實驗結果

6、 對程式設計過程中出現的問題進行分析與總結;

7、 列印源程式或把源程式以檔案的形式提交;

8、 按格式要求完成實驗報告。

實驗報告要求:

1、 各種演算法的基本原理;

2、 各演算法的流程圖

3、 實驗結果及分析(比較三種演算法的特點,介面插圖並註明實驗條件)

4、 實驗總結(含問題分析及解決方法)

實驗型別:設計性

實驗類別:專業實驗

實驗目的

1、 通過實驗,進一步理解和掌握中點bresenham畫圓演算法的基本原理;

2、 掌握以上演算法生成圓和圓弧的基本過程;

3、 掌握在c/c++環境下完成用中點bresenham演算法圓或圓弧的繪製方法。

實驗裝置及實驗環境

計算機(每人一台)

vc++6.0或其他c/c++語言程式設計環境

實驗學時:2學時

實驗內容

用中點(besenham)演算法實現圓或圓弧的繪製。

實驗步驟

1. 複習有關圓的生成演算法,明確實驗目的和要求;

2. 依據演算法思想,繪製程式流程圖(注意圓弧生成時的輸入條件);

3. 設計程式介面,要求操作方便;

4. 用c/c++語言編寫源程式並除錯、執行;

5. 分析實驗結果

6. 對程式設計過程中出現的問題進行分析與總結;

7. 列印源程式或把源程式以檔案的形式提交;

8. 按格式要求完成實驗報告。

實驗報告要求:

1. 分析演算法的工作原理;

2. 畫出演算法的流程圖

3. 實驗結果及分析(比較圓與圓弧生成演算法的不同)

4. 實驗總結(含問題分析及解決方法)

學時:2

實驗型別:設計性

實驗類別:專業實驗

實驗目的

1. 通過實驗,進一步理解和掌握幾種常用多邊形填充演算法的基本原理

2. 掌握多邊形區域填充演算法的基本過程

3. 掌握在c/c++環境下用多邊形填充演算法程式設計實現指定多邊形的填充。

實驗裝置及實驗環境

計算機(每人一台)

vc++6.0或其他c/c++語言程式設計環境

實驗學時:2學時

實驗內容

用種子填充演算法和掃瞄線填充演算法等任意兩種演算法實現指定多邊形的區域填充。

實驗步驟

1. 複習有關演算法,明確實驗目的和要求;

2. 依據演算法思想,繪製程式流程圖(指定填充多邊形);

3. 設計程式介面,要求操作方便;

4. 用c/c++語言編寫源程式並除錯、執行(最好能用動畫顯示填充過程);

5. 分析實驗結果

6. 對程式設計過程中出現的問題進行分析與總結;

7. 列印源程式或把源程式以檔案的形式提交;

8. 按格式要求完成實驗報告。

實驗報告要求:

1. 分析演算法的工作原理;

2. 畫出演算法的流程圖

3. 實驗結果及分析(比較兩種演算法的不同)

4. 實驗總結(含問題分析及解決方法)

實驗型別:設計性

實驗類別:專業實驗

實驗目的

1、 通過實驗,進一步理解和掌握cohen_sutherland 裁剪演算法的基本原理;

2、 掌握用cohen_sutherland 裁剪演算法的基本過程;

3、 掌握在c/c++環境下用cohen_sutherland 演算法程式設計實現用矩形視窗對直線的裁剪。

實驗裝置及實驗環境

計算機(每人一台)

vc++6.0或其他c/c++語言程式設計環境

實驗學時:2學時

實驗內容

用cohen_sutherland 演算法程式設計實現用矩形視窗對直線的裁剪。

實驗步驟

1. 複習有關演算法,明確實驗目的和要求;

2. 依據演算法思想,繪製程式流程圖(裁剪視窗固定);

3. 設計程式介面,要求操作方便;

4. 用c/c++語言編寫源程式並除錯、執行(最好能顯示裁剪動畫);

5. 分析實驗結果

6. 對程式設計過程中出現的問題進行分析與總結;

7. 列印源程式或把源程式以檔案的形式提交;

8. 按格式要求完成實驗報告。

實驗報告要求:

1. 分析演算法的工作原理;

2. 畫出演算法的流程圖

3. 實驗結果及分析(比較圓與圓弧生成演算法的不同)

4. 實驗總結(含問題分析及解決方法)

實驗型別:設計性

實驗類別:專業實驗

實驗目的

1. 通過實驗,進一步理解和掌握梁友棟裁剪演算法的基本原理

2. 掌握用梁友棟裁剪演算法裁減直線的基本過程

3. 掌握在c/c++環境下完成用梁友棟裁剪演算法程式設計實現用矩形視窗對直線的裁剪。

實驗裝置及實驗環境

計算機(每人一台)

vc++6.0或其他c/c++語言程式設計環境

實驗學時:2學時

實驗內容

用cohen_sutherland 演算法程式設計實現用矩形視窗對直線的裁剪。

實驗步驟

1. 複習有關演算法,明確實驗目的和要求;

2. 依據演算法思想,繪製程式流程圖(裁剪視窗固定);

3. 設計程式介面,要求操作方便;

4. 用c/c++語言編寫源程式並除錯、執行(最好能顯示裁剪動畫);

5. 分析實驗結果

6. 對程式設計過程中出現的問題進行分析與總結;

7. 列印源程式或把源程式以檔案的形式提交;

8. 按格式要求完成實驗報告。

實驗報告要求:

1. 分析演算法的工作原理;

2. 畫出演算法的流程圖

3. 實驗結果及分析(比較圓與圓弧生成演算法的不同)

4. 實驗總結(含問題分析及解決方法)

實驗型別:設計性

實驗類別:專業實驗

實驗目的

1、 通過實驗,掌握計算機圖形變換的基本知識、原理;

2、 掌握二維和三維圖形幾何變換;

3、 通過使用vc++程式設計環境實現指定圖形的常見幾何變換;

實驗裝置及實驗環境

計算機(每人一台)

vc++6.0或其他c/c++語言程式設計環境(可使用opengl)

實驗學時:2學時

實驗內容

1. 在vc++程式設計環境下建立平面幾何圖形實現其常見幾何變換;

2. 在vc++程式設計環境下建立三維立方體,實現其幾何變換,包括縮放\平移\旋轉.

實驗步驟

1. 複習有關演算法,明確實驗目的和要求;

2. 依據演算法思想,繪製程式流程圖;

3. 設計程式介面,要求操作方便;

4. 用c/c++語言編寫源程式並除錯、執行(任意指定乙個圖形);

5. 分析實驗結果

6. 對程式設計過程中出現的問題進行分析與總結;

7. 列印源程式或把源程式以檔案的形式提交;

8. 按格式要求完成實驗報告。

實驗報告要求:

1. 分析演算法的工作原理;

2. 畫出演算法的流程圖

3. 實驗結果及分析(比較圓與圓弧生成演算法的不同)

4. 實驗總結(含問題分析及解決方法)

附錄1:

在tc下構建圖形環境的**及例子:

/* display.h : 初始化圖形系統函式

#include "stdio.h"

#include "stdlib.h"

#include "graphics.h"

#define esc 0x1b

/* initialize: initializes the graphics system and reports

/* any errors which occured

void initialize(void)

}以上initialize函式就完成了圖形環境的建立,以下就可以使用tc下的繪圖函式完成繪圖。

常用的tc繪圖函式有:

圖形和影象函式包含在graphics.h裡面

(一) 畫素函式

1、 putpixel() 畫畫素點函式 (注意:與win32不同)

2、getpixel()返回像素色函式

(二) 直線和線型函式

1. line() 畫線函式

2. lineto() 畫線函式

3. linerel() 相對畫線函式

4. setlinestyle() 設定線型函式

5. getlinesettings() 獲取線型設定函式

6. setwritemode() 設定畫線模式函式

(三)、多邊形函式

7. rectangle() 畫矩形函式

8. bar() 畫條函式

9. bar3d() 畫條塊函式

10. drawpoly() 畫多邊形函式

(四)、 圓、弧和曲線函式

1. getaspectratio()獲取縱橫比函式

2. circle()畫圓函式

3. arc() 畫圓弧函式

4. ellipse()畫橢圓弧函式

5. fillellipse() 畫橢圓區函式

6. pieslice() 畫扇區函式

7. sector() 畫橢圓扇區函式

計算機圖形學實驗指導書印刷

目錄第1章計算機圖形學實驗基礎知識 11.1 計算機圖形學實驗環境配置 11.2 visual c 6.0的使用 11.3 visual c 6.0工程相關檔案介紹 11.4 visual c 6.0程式除錯 21.4.1 visual c 除錯工具 21.4.2 控制程式的執行 7 1.5 vis...

計算機圖形學實驗報告

成都理工大學電腦科學與技術學院 一 所在系 數字 技術系 專業學生姓名 學號2012年月日 實驗一基本圖元的生成 一 實驗目的與實驗要求 1 目的與任務 學習並掌握圖形處理的數學模型和演算法。2 實驗基本要求 1 利用所學演算法原理 dda 中點畫線 bresenham 程式設計繪製生成直線,並比較...

計算機圖形學試題 A

2010 2011計算機圖形學試題 a 一 填空題 共20分,每空2分 1 將多邊形外部一點a與某一點b用線段連線,若此線段與多邊形邊界相交的次數為 則點b在多邊形外部。若此線段與多邊形邊界相交的次數為,則點b在多邊形內部。2 生成直線的四點要求是速度要快。3 由5個控制頂點pi i 0,1,4 所...