資源描述:
《簡單圖形繪制系統(tǒng)設(shè)計(jì)方案.doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、簡單圖形繪制系統(tǒng)設(shè)計(jì)方案第一章課題背景引言計(jì)算機(jī)技術(shù)的發(fā)展,使人類社會(huì)進(jìn)入了信息化和自動(dòng)化,計(jì)算機(jī)智能識別也隨著計(jì)算機(jī)的發(fā)展得到了迅速的發(fā)展。特別是圖形圖像的計(jì)算機(jī)處理技術(shù)更是有了前所未有的進(jìn)步和應(yīng)用。計(jì)算機(jī)識別也逐漸的從圖形圖像處理的大環(huán)境下分離出來作為一門新的高科技研究領(lǐng)域出現(xiàn)。畫圖涉及到的學(xué)科很多,包括數(shù)字信號處理、工程數(shù)學(xué)、信息論、運(yùn)籌學(xué)等,它與計(jì)算機(jī)、自動(dòng)化、生物學(xué)、視覺心理和生理學(xué)、人工智能、智能信息處理等眾多領(lǐng)域交叉、綜合集成,有廣泛的應(yīng)用。該軟件功能與Windows下附件中的畫圖軟件有相似功能。本程序是在VC6
2、.0平臺(tái)上用MFC所編。繪制方面的功能主要包括繪制各種圖元,包括直線、矩形、橢圓,用筆或畫刷自由繪圖。繪圖時(shí)可以選擇各種顏色,各種線型和線寬。該軟件設(shè)計(jì)的設(shè)計(jì)思想是面向?qū)ο蟪绦蛟O(shè)計(jì)的思想。面向?qū)ο蠹夹g(shù)是一個(gè)非常實(shí)用而強(qiáng)有力的軟件開發(fā)方法。它具有許多特色。一是方法的唯一性,即方法是對軟件開發(fā)過程所有階段進(jìn)行綜合考慮而得到的。二是從生存期的一個(gè)階段到下一個(gè)階段的高度連續(xù)性,即在一個(gè)階段所用到的部分與在下一個(gè)階段所使用的部分是銜接的,所使用的技術(shù)經(jīng)過生存期每一階段后不改變。三是把面向?qū)ο蠓治觯∣OA)、面向?qū)ο笤O(shè)計(jì)(OOD)和面向?qū)?/p>
3、象程序設(shè)計(jì)(OOP)集成到生存期的相應(yīng)階段。筆者作為一個(gè)初學(xué)者,所學(xué)知識有限,做這個(gè)軟件主要是為了測試近期的學(xué)習(xí)成果,方便了解對MFC的學(xué)習(xí)掌握程度,以便于后期的學(xué)習(xí)。該程序中基本上包含了筆者這一段時(shí)間在VC上付出的所有努力。軟件又MFC單文檔類工程為主要載體,其中菜單、對話框的創(chuàng)建以及各種消息的響應(yīng),MFC庫函數(shù)的調(diào)用等,其創(chuàng)建過程能看出一個(gè)初學(xué)者由淺入深的過程。軟件的預(yù)期是能成為一個(gè)電腦繪圖的輔助功能存在,可是軟件完成后繪圖功能上依然有許多方面不能滿足需求。希望讀者提出寶貴的意見和建議。第二章設(shè)計(jì)簡介及設(shè)計(jì)方案論述2.1設(shè)
4、計(jì)目的培養(yǎng)學(xué)生對科學(xué)研究的認(rèn)識,掌握基本的科研方法;培養(yǎng)學(xué)生分析問題、研究問題和解決問題的能力;培養(yǎng)學(xué)生動(dòng)手能力和編程能力以及自主查閱資料的能力。2.2設(shè)計(jì)思路2.2.1題設(shè)要求完成簡單圖形的繪制系統(tǒng):實(shí)現(xiàn)直線,矩形,圓的繪制,并能設(shè)置線型,線寬和顏色;實(shí)現(xiàn)圖形的重繪和保存功能;實(shí)現(xiàn)在狀態(tài)欄動(dòng)態(tài)顯示當(dāng)前時(shí)間功能。2.2.2題目分析題目要求設(shè)計(jì)一個(gè)簡單的繪圖系統(tǒng),程序功能要求簡單,可以用一個(gè)簡單的窗口菜單程序解決。對題目要求的繪制圖形和線條更改,使用菜單響應(yīng)會(huì)很容易解決,至于圖形的重繪和保存,狀態(tài)欄的時(shí)間顯示雖然使用的函數(shù)較為復(fù)
5、雜,看似麻煩,實(shí)際上函數(shù)框架簡化出來后很容易理解,響應(yīng)功能的代碼量也相對較少。2.3設(shè)計(jì)原理我創(chuàng)建的是一個(gè)單文檔類的MFCAppWizard(exe)工程(圖2-1,圖2-2),在該工程里,我使用菜單(圖2-3,圖2-4)和對話框(圖2-5)實(shí)現(xiàn)了題目要求的簡單繪圖設(shè)計(jì)。圖2-1創(chuàng)建MFC應(yīng)用程序圖2-2創(chuàng)建單文檔類MFC工程圖2-3雙擊IDR_MAINFRAME創(chuàng)建菜單圖2-4建立如圖菜單項(xiàng)圖2-5建立如圖所示對話框第三章詳細(xì)設(shè)計(jì)3.1菜單的響應(yīng)3.1.1菜單的創(chuàng)建首先建立一個(gè)但文檔類型的MFCAppWizard(exe)工
6、程,工程名為:簡單繪圖演示(圖2-1,圖2-2),然后打開資源視圖,找到“菜單”-“IDR_MAINFRAME”,雙擊“IDR_MAINFRAME”創(chuàng)建菜單(見圖2-3圖2-4)。建立的菜單如圖4所示。3.1.2菜單的響應(yīng)菜單建好后,要為所建立的菜單添加消息響應(yīng)函數(shù),這樣所建立的菜單才能被加載入程序(斜體部分為添加的消息響應(yīng)函數(shù),圖3-1)。例3-1voidC簡單繪圖演示View::OnLine(){//TODO:在此添加命令處理程序代碼}voidC簡單繪圖演示View::OnCircle(){//TODO:在此添加命令處理程
7、序代碼}voidC簡單繪圖演示View::OnRect(){//TODO:在此添加命令處理程序代碼}圖3-1在類向?qū)е许憫?yīng)創(chuàng)建的菜單項(xiàng)(響應(yīng)項(xiàng)ID:ID_CIRCLE、ID_LINE、ID_RECT;分別對應(yīng)圓、直線、矩形)接著,為C簡單繪圖演示View添加私有成員變量m_nDrawStyle(圖3-2是具體的添加成員變量操作),并將m_nDrawStyle初始化為0(斜體為m_nDrawStyle初始化過程)。例3-2C簡單繪圖演示View::C簡單繪圖演示View():m_nDrawStyle(0){//TODO:在此處添
8、加構(gòu)造代碼m_nDrawStyle=0;}圖3-2為C簡單繪圖演示View添加UINT類型的私有成員變量m_nDrawStylem_nDrawStyle變量初始化后再為響應(yīng)函數(shù)賦值(斜體為賦值過程)例3-3voidC簡單繪圖演示View::OnLine(){//TODO:在此