計算機圖形學實驗指導(dǎo)書_第1頁
計算機圖形學實驗指導(dǎo)書_第2頁
計算機圖形學實驗指導(dǎo)書_第3頁
計算機圖形學實驗指導(dǎo)書_第4頁
計算機圖形學實驗指導(dǎo)書_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

PAGEPAGE9《計算機圖形學》實驗指導(dǎo)書第四版主要介紹基于VisualC++6.0,應(yīng)用MFC程序設(shè)計框架、文檔與視圖結(jié)構(gòu),基本控件設(shè)計,實現(xiàn)計算機圖形學一些重要的基本圖形生成算法。通過實驗,讓學生掌握與計算機圖形相關(guān)的硬件知識,學會計算機基本圖形生成、變換、以及曲線和曲面的基本算法,并進行程序設(shè)計與上機實現(xiàn)。為今后從事圖形學領(lǐng)域的研究和設(shè)計打下基礎(chǔ)。幫助學習者掌握基本的程序開發(fā)技能。本實驗指導(dǎo)書的內(nèi)容分為兩大部分:第一部分介紹VisualC++實驗環(huán)境;第二部分是具體的實驗安排。共安排了一個實驗:實驗序號實驗內(nèi)容機時數(shù)1基本圖形可視化生成10第一部分VisualC++實驗環(huán)境介紹VisualC++簡介VisualC++是Microsoft公司的VisualStudio開發(fā)工具箱中的一個C++程序開發(fā)包。VisualStudio提供了一整套開發(fā)Internet和Windows應(yīng)用程序的工具,包括VisualC++,VisualBasic,VisualFoxpro,VisualInterDev,VisualJ++以及其他輔助工具,如代碼管理工具VisualSourceSafe和聯(lián)機幫助系統(tǒng)MSDN。VisualC++包中除包括C++編譯器外,還包括所有的庫、例子和為創(chuàng)建Windows應(yīng)用程序所需要的文檔。從最早期的1.0版本,發(fā)展到最新的6.0版本,VisualC++已經(jīng)有了很大的變化,在界面、功能、庫支持方面都有許多的增強。最新的6.0版本在編譯器、MFC類庫、編輯器以及聯(lián)機幫助系統(tǒng)等方面都比以前的版本做了較大改進。VisualC++一般分為三個版本:學習版、專業(yè)版和企業(yè)版,不同的版本適合于不同類型的應(yīng)用開發(fā)。實驗中可以使用這三個版本的任意一種。VisualC++集成開發(fā)環(huán)境(IDE)集成開發(fā)環(huán)境(IDE)是一個將程序編輯器、編譯器、調(diào)試工具和其他建立應(yīng)用程序的工具集成在一起的用于開發(fā)應(yīng)用程序的軟件系統(tǒng)。VisualC++軟件包中的DeveloperStudio就是一個集成開發(fā)環(huán)境,它集成了各種開發(fā)工具和VC編譯器。程序員可以在不離開該環(huán)境的情況下編輯、編譯、調(diào)試和運行一個應(yīng)用程序。IDE中還提供大量在線幫助信息協(xié)助程序員做好開發(fā)工作。DeveloperStudio中除了程序編輯器、資源編輯器、編譯器、調(diào)試器外,還有各種工具和向?qū)Вㄈ鏏ppWizard和ClassWizard),以及MFC類庫,這些都可以幫助程序員快速而正確地開發(fā)出應(yīng)用程序。向?qū)?Wizard)向?qū)ㄟ^一步步的幫助引導(dǎo)工作。DeveloperStudio中包含三個向?qū)В篈ppWizard:用來創(chuàng)建一個Windows程序的基本框架結(jié)構(gòu)。AppWizard向?qū)徊讲教岢鰡栴},詢問項目特征,然后根據(jù)這些特征自動生成一個可以執(zhí)行的程序框架。ClassWizard:用來定義AppWizard所創(chuàng)建的程序中的類。可利用ClassWizard在項目中增加類、為類增加消息處理函數(shù)等。ActiveXControlWizard:用于創(chuàng)建一個ActiveX控件的基本框架結(jié)構(gòu)。ActiveX控件是用戶自定義的控件,它支持一系列定義的接口,可以作為一個可再利用的組件。MFC庫庫(library)是可以重復(fù)使用的源代碼和目標代碼的集合。MFC(MicrosoftFundamentalCasses)是VisualC++開發(fā)環(huán)境所帶的類庫,在該類庫中提供了大量的類,可以幫助開發(fā)人員快速建立應(yīng)用程序。這些類可以提供程序框架、進行文件和數(shù)據(jù)庫操作、建立網(wǎng)絡(luò)連接、進行繪圖和打印等各種通用的應(yīng)用程序操作。使用MFC庫開發(fā)應(yīng)用程序可以減少很多工作量。項目開發(fā)過程一個用C++開發(fā)的項目的通用開發(fā)過程可以用下圖表示。建立一個項目的第一步是利用編輯器建立程序代碼文件,包括頭文件、代碼文件、資源文件等。然后,啟動編譯程序,編譯程序首先調(diào)用預(yù)處理程序處理程序中的預(yù)處理命令(如#include,#define等),經(jīng)過預(yù)處理程序處理的代碼將作為編譯程序的輸入。編譯對用戶程序進行詞法和語法分析,建立目標文件,文件中包括機器代碼、連接指令、外部引用以及從該源文件中產(chǎn)生的函數(shù)和數(shù)據(jù)名。此后,連接程序?qū)⑺械哪繕舜a和用到的靜態(tài)連接庫的代碼連接起來,為所有的外部變量和函數(shù)找到其提供地點,最后產(chǎn)生一個可執(zhí)行文件??蓤?zhí)行文件分為兩種版本:Debug和Release。Debug版本用于程序的開發(fā)過程,該版本產(chǎn)生的可執(zhí)行程序帶有大量的調(diào)試信息,可以供調(diào)試程序使用,而Release版本作為最終的發(fā)行版本,沒有調(diào)試信息,并且?guī)в心撤N形式的優(yōu)化。在上機實習過程中可以采用Debug版本,這樣便于調(diào)試。選擇是產(chǎn)生Debug版本還是Release版本的方法是:在DeveloperStudio中選擇菜單Build|SetActiveConfiguration,在彈出的對話框中,選擇所要的類型,然后選擇OK關(guān)閉對話框。VisualC++集成開發(fā)環(huán)境中集成了編輯器、編譯器、連接器以及調(diào)試程序,覆蓋了的開發(fā)應(yīng)用程序的整個過程,程序員不需要脫離這個開發(fā)環(huán)境就可以開發(fā)出完整的應(yīng)用程序。集成開發(fā)環(huán)境DeveloperStudio進入DeveloperStudio單擊任務(wù)欄中“開始”后選擇“程序”,找到MicrosoftVisualStudio6.0文件夾后,單擊其中的MicrosoftVisualC++6.0圖標,啟動DeveloperStudio。DeveloperStudio的界面DeveloperStudio用戶界面是一個由窗口、工具條、菜單、工具及其他部分組成的一個集成界面。通過這個界面,用戶可以在同一環(huán)境下創(chuàng)建、測試、調(diào)試應(yīng)用程序。界面如下:主要部分介紹如下:工具條和菜單,提供用戶操作命令。菜單和工具條在開發(fā)的不同進程有不同顯示內(nèi)容。當?shù)谝淮未蜷_DeveloperStudio時,標準的工具條和菜單就會顯示出來,隨著開發(fā)的不同步驟,不同的工具條就會自動顯示出來,菜單也會有所變化。工具條有很多種,你可以顯示任意多的工具條,只要屏幕空間允許。工具條可以任意移動,也可以放大縮小。工具條和菜單條功能基本相同,唯一的區(qū)別是:菜單條總占據(jù)一行,并且一般不能隱藏。工作區(qū)窗口,這個窗口包含關(guān)于正在開發(fā)的這個項目的有關(guān)信息。當打開一個項目以后,工作區(qū)窗口將會顯示關(guān)于當前項目的文件信息和類的信息。下圖是打開一個項目hello以后的工作區(qū)窗口(假設(shè)該項目由兩個文件cpp1.cpp,cpp2.cpp組成)。文檔窗口區(qū),這個區(qū)域可以顯示各種類型的文檔,如源代碼文件、頭文件、資源文件等??梢酝瑫r打開多個文檔。輸出窗口,輸出窗口用來顯示幾種信息,可以通過選擇不同的標簽顯示不同的信息。這些信息包括:編譯連接結(jié)果信息(Build標簽)、調(diào)試信息(Debug標簽)、查找結(jié)果信息(FindinFiles標簽)。其中查找結(jié)果信息有兩個標簽,可以顯示兩次在文件中查找指定內(nèi)容的結(jié)果總的來說,窗口和命令接口(包括工具條和菜單條)是構(gòu)成界面的最主要組成部分。通常有兩種窗口:文檔窗口和可附著(docking)窗口。文檔窗口顯示在文檔窗口區(qū),用于顯示和編輯文檔,其大小和位置可以隨其所處的DeveloperStudio窗口的改變而改變,可以最大化和最小化??筛街翱诳梢愿街趹?yīng)用程序窗口的邊界,也可以浮在屏幕上的任何位置??筛街翱谟校汗ぷ鲄^(qū)(workspace)窗口,輸出(output)窗口,調(diào)試窗口(包括variable,watch,local等窗口)等。文檔窗口的位置、大小及是否可見和它所在的項目有關(guān),docking窗口的位置、大小及是否可見則與項目進行的狀態(tài)以及各種編輯和調(diào)試的操作有關(guān)。各種窗口和各種工具條以及菜單構(gòu)成了界面的布局。一旦用戶決定了一種界面布局,系統(tǒng)就會為一直為用戶保持這種布局,直到用戶下一次改變該布局為止。獲得幫助信息大多數(shù)時候,可以通過按F1得到上下文幫助。如在編輯文件時按F1可以得到有關(guān)編輯的幫助,在編譯連接錯誤信息上按F1可以得到關(guān)于該錯誤的幫助信息。如果想系統(tǒng)地獲得幫助,可以通過選擇菜單Help|Contents來啟動MSDN查閱器,MSDN查閱器是一個功能強大的程序,可以方便地瀏覽、查找信息,要想知道具體如何使用MSDN查閱器,可以在MSDN查閱器中選菜單Help下的命令。VisualC++的編輯器DeveloperStudio包含一個功能強大的編輯器,可以編輯將被編譯成Windows程序的VisualC++源文件。這個編輯器有點象字處理器,但是沒有字處理器具備的復(fù)雜的排版、文本格式等功能,它注重的是如何幫助程序員快速高效地編制程序。它具有以下特點:自動語法。用高亮度和不同顏色的字來顯示不同的語法成分,如注釋、關(guān)鍵字和一般代碼用不同的顏色顯示自動縮進。幫助你排列源代碼,使其可讀性更強參數(shù)幫助。在編輯時用到預(yù)定義的windows函數(shù)時,可以自動為你顯示函數(shù)參數(shù)集成的關(guān)鍵字幫助。能夠使你快速得到任何關(guān)鍵字、MFC類或Windows函數(shù)的幫助信息(按F1即可)拖放編輯。能夠用鼠標選擇文本并自由拖動到任意位置自動錯誤定位。能自動將光標移動到有編譯錯誤的源代碼處。當你打開一個源代碼文件時,就可以利用編輯器對其進行編輯。源代碼文件在文檔顯示區(qū)顯示,每個文件有獨立的顯示窗口。如果你選擇用其他編輯器編輯源文件,必須將它以純文本的方式保存。VC的編譯器不能處理其中有特別格式字符的文件。常用功能鍵及其意義為了使程序員能夠方便快捷地完成程序開發(fā),開發(fā)環(huán)境提供了大量快捷方式來簡化一些常用操作的步驟。鍵盤操作直接、簡單,而且非常方便,因而程序員非常喜歡采用鍵盤命令來控制操作。下面是一些最常用的功能鍵,希望在實驗中逐步掌握。操作類型功能鍵對應(yīng)菜單含義文件操作Ctrl+NFile|New創(chuàng)建新的文件、項目等Ctrl+OFile|Open打開項目、文件等Ctrl+SFile|Save保存當前文件編輯操作Ctrl+XEdit|Cut剪切Ctrl+CEdit|Copy復(fù)制Ctrl+VEdit|Paste粘貼Ctrl+ZEdit|Undo撤消上一個操作Ctrl+YEdit|Redo重復(fù)上一個操作Ctrl+AEdit|SelectAll全選DelEdit|Del刪除光標后面的一個字符建立程序操作Ctrl+F7Build|Compilercurrentfile編譯當前源文件Ctrl+F5Build|Runexe運行當前項目F7Build|Buildexe建立可執(zhí)行程序F5Build|StartDebugging啟動調(diào)試程序調(diào)試F5Debug|Go繼續(xù)運行F11Debug|Stepinto進入函數(shù)體內(nèi)部shift+F11Debug|Stepout從函數(shù)體內(nèi)部運行出來F10Debug|Stepover執(zhí)行一行語句F9設(shè)置/清除斷點Ctrl+F10Debug|Runtocursor運行到光標所在位置shift+F9Debug|QuickWatch快速查看變量或表達式的值Shift+F5Debug|Stopdebugging停止調(diào)試第二部分實驗注意事項:每次實驗以前,需要詳細閱讀實驗?zāi)康?、實驗要求和實驗提示,以便能準確地理解實驗要求,達到實驗的目的。有的實驗前后有聯(lián)系,需要先完成前面的實驗再進行后面的實驗。請務(wù)必按照先后順序完成實驗。指導(dǎo)老師那兒有關(guān)于實驗的詳細解答,如果有疑問,可以請教指導(dǎo)老師。實驗項目: 基本圖形可視化生成實驗內(nèi)別:設(shè)計性實驗?zāi)康模毫私夂褪褂肰C集成開發(fā)環(huán)境熟悉VC環(huán)境的基本命令和功能鍵,熟悉常用的功能菜單命令學習使用VC++環(huán)境的幫助了解用VisualC++開發(fā)WindowsMFC應(yīng)用程序的過程實現(xiàn)基本圖形生成算法實驗要點:熟悉MFC程序設(shè)計的基本過程,編輯、編譯、連接和運行程序;掌握面向?qū)ο蟮某绦蛟O(shè)計方法,采用類的封裝和繼承實現(xiàn)基本圖形;定義圖形基類,定義圖形如直線、圓、多邊形等派生類,掌握虛函數(shù)的使用;實現(xiàn)直線的生成算法、多邊形掃描線填充算法、二維圖形變換(平移、旋轉(zhuǎn)和鏡像)實驗內(nèi)容本次實驗?zāi)銓W習有關(guān)VisualC++開發(fā)環(huán)境的一些知識,并實現(xiàn)一個簡單的DOS程序和Windows程序,熟悉開發(fā)環(huán)境后,生成一個單文檔應(yīng)用程序并添加代碼實現(xiàn)基本圖形生成算法。熟悉VisualC++實驗環(huán)境1.程序調(diào)試方法【實驗步驟】啟動DeveloperStudio,看看初始化界面由哪些部分組成查看各菜單項,看看都有哪些子菜單和命令將鼠標放置于各工具條圖標上,系統(tǒng)會自動顯示該圖標代表的命令含義,了解一下都有哪些命令。在任意工具條上單擊鼠標右鍵,彈出式菜單上將顯示所有可用的工具條,選擇其中沒有對號(√)的項,看看有什么效果,再選擇有對號的項,又有什么效果?將鼠標移動到任意工具條上,將鼠標放到圖標間隙,按下鼠標左鍵不放,移動鼠標到屏幕中間,有什么現(xiàn)象發(fā)生?再將它拖回到原來位置,有什么現(xiàn)象發(fā)生?將鼠標移動到左邊的工作區(qū)窗口,按下鼠標左鍵不放,移動鼠標到屏幕中間,有什么現(xiàn)象發(fā)生?再將它拖回到原來位置,有什么現(xiàn)象發(fā)生?將鼠標移動到下邊的輸出窗口,按鼠標右鍵,彈出一個菜單,選擇其中的菜單項“Hide”,結(jié)果如何?要重新顯示該窗口,選擇菜單View|Output,窗口是不是又顯示出來了?學習使用幫助系統(tǒng)。選擇菜單Help|Contents,啟動MSDN聯(lián)機幫助系統(tǒng),學習使用該幫助系統(tǒng)。聯(lián)機幫助系統(tǒng)是一個相對獨立的程序,它和DeveloperStudio是兩個程序。選File|Exit退出DeveloperStudio。Windows應(yīng)用用AppWizard建立一個MFCWindows應(yīng)用,在窗口中輸出“Hello,World!”術(shù)語:AppWizard是一個工具,利用該工具,可以創(chuàng)建一個建立在MFC基礎(chǔ)上的窗口應(yīng)用程序框架,然后在這個框架中加上自己的應(yīng)用邏輯??梢赃x擇所創(chuàng)建的應(yīng)用類型,最常用的是多文檔應(yīng)用(就象字編輯器MicrosoftWord一樣,可以同時打開多個文檔窗口的應(yīng)用)、單文檔應(yīng)用(類似于Windows提供的notepad,一次只能打開一個文檔)和對話框應(yīng)用(類似于Windows的時鐘程序)。【實驗步驟】創(chuàng)建一個新項目利用DeveloperStudio的AppWizard創(chuàng)建一個新的項目,步驟為:選擇菜單File|New,在New對話框中選擇Projects標簽,在顯示的項目類型中選擇MFCAppWizard(exe)在右邊的ProjectName編輯框中輸入項目名稱,如“helloMFC”,然后按OKMFCAppWizard將分幾步詢問有關(guān)要建立的新項目的配置。第一個對話框問是創(chuàng)建哪種類型的應(yīng)用(單文檔、多文檔還是對話框類型),選擇創(chuàng)建單文檔應(yīng)用“Singledocument”,然后按Next按鈕翻過后面的五個頁面(按Next),每個頁面可以改變項目的不同選項。最后一個MFCAppWizard屏幕告訴你AppWizard自動產(chǎn)生的類。單擊Finish鍵,AppWizard顯示一個關(guān)于該項目的摘要,列出這些類和你所選擇的特征。單擊OK,系統(tǒng)自動產(chǎn)生helloMFC所需要的文件。瀏覽helloMFC項目當用MFCAppWizard創(chuàng)建了helloMFC項目后,這個項目的工作區(qū)窗口將會打開,工作區(qū)窗口增加了三個標簽(如下圖):ClassView、ResourceView和FileView,其中ClassView顯示工作區(qū)中所有項目的類及類的成員;ResourceView顯示項目中包含的資源文件;FileView顯示項目中的各種文件資源。先選擇FileView看一下AppWizard創(chuàng)建了哪些文件,然后選擇ClassView看一下定義了哪些類。編譯連接運行按F7或者選擇菜單Build|BuildhelloMFC.exe,編譯連接得到可執(zhí)行程序,再按Ctrl+F5或者選擇Build|ExecutehelloMFC.exe運行該程序。程序的結(jié)果如下:用MFC處理輸出現(xiàn)在希望在程序中間的窗口上顯示一行文字“Hello,World”。如何修改呢?在工作區(qū)窗口中選擇ClassView標簽,單擊helloMFCclasses前面的加號(如果已經(jīng)變成減號則不做此操作)單擊類CHelloMFCView類前面的加號雙擊OnDraw()函數(shù),在右邊的文檔將顯示窗口顯示文件helloMFCView的內(nèi)容,并且自動將光標定位到函數(shù)OnDraw()處。修改OnDraw函數(shù)的定義,在最后一行加一句:

pDC->TextOut(50,50,"Hello,World");按Ctrl+s或者選菜單File|Save來保存所作的修改編譯連接并運行重新編譯連接該項目,運行程序,可以用Ctrl+F5直接運行程序,系統(tǒng)將詢問是否重新編譯該項目,回答“是(Yes)”,如果有編譯錯誤,仔細檢查你加的一句話,是否有錯。當編譯連接通過后,系統(tǒng)會自動運行該程序。經(jīng)過上述修改后,程序可以輸出一行文字“Hello,World”。這是實現(xiàn)的第一個Windows程序!【編譯和連接錯誤定位】開發(fā)環(huán)境下方的輸出窗口(Output)顯示編譯和連接過程中出現(xiàn)的錯誤,錯誤信息包括:錯誤出現(xiàn)的文件名、行號、錯誤代碼。如果不懂錯誤消息,將光標移動到該錯誤信息,按F1,就可以顯示該錯誤的幫助信息。在output窗口,雙擊錯誤或者選擇該錯誤再按ENTER鍵,系統(tǒng)自動將光標移動到發(fā)生錯誤的源程序行,你然后就可以改正

溫馨提示

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

最新文檔

評論

0/150

提交評論