![實現(xiàn)一個簡單畫圖的功能_第1頁](http://file4.renrendoc.com/view/d850d43b04f848db76dc00f6454cf52d/d850d43b04f848db76dc00f6454cf52d1.gif)
![實現(xiàn)一個簡單畫圖的功能_第2頁](http://file4.renrendoc.com/view/d850d43b04f848db76dc00f6454cf52d/d850d43b04f848db76dc00f6454cf52d2.gif)
![實現(xiàn)一個簡單畫圖的功能_第3頁](http://file4.renrendoc.com/view/d850d43b04f848db76dc00f6454cf52d/d850d43b04f848db76dc00f6454cf52d3.gif)
![實現(xiàn)一個簡單畫圖的功能_第4頁](http://file4.renrendoc.com/view/d850d43b04f848db76dc00f6454cf52d/d850d43b04f848db76dc00f6454cf52d4.gif)
![實現(xiàn)一個簡單畫圖的功能_第5頁](http://file4.renrendoc.com/view/d850d43b04f848db76dc00f6454cf52d/d850d43b04f848db76dc00f6454cf52d5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
實現(xiàn)一個簡單畫圖的功能第1頁,課件共17頁,創(chuàng)作于2023年2月問題的分析(面向對象分析)確定對象:名詞短語(候選者)顯示器熒光屏:一種輸出設備,不是對象圓心坐標:圓和弧的基本屬性,不是對象位置:即圓心坐標,不是對象半徑:圓和弧的基本屬性,不是對象圓(Circle):對象?。ˋrc):對象起始角度:弧的屬性,不是對象結束角度:弧的屬性,不是對象第2頁,課件共17頁,創(chuàng)作于2023年2月問題的分析(面向對象分析)確定屬性:確定對象的過程中發(fā)現(xiàn):圓的屬性:圓心坐標,半徑弧的屬性:圓心坐標,半徑,起始角度,結束角度借助于領域知識:圓和弧的屬性:可見性第3頁,課件共17頁,創(chuàng)作于2023年2月問題的分析(面向對象分析)確定服務:訪問屬性值:讀/寫圓心坐標(圓,?。┳x/寫半徑(圓,?。┳x/寫起始角度(弧)讀/寫結束角度(?。┳x/寫可見性(圓,?。╋@示(圓,?。╇[藏(圓,?。┑?頁,課件共17頁,創(chuàng)作于2023年2月問題的解決(面向對象設計)建立類層次:圓為父類,弧為子類進一步分析:點,位置定義屬性定義服務類圖第5頁,課件共17頁,創(chuàng)作于2023年2月程序設計(C++)自定義數(shù)據(jù)類型enumBoolean{false,true};定義類說明數(shù)據(jù)成員說明和定義成員函數(shù)成員函數(shù)構造函數(shù)第6頁,課件共17頁,創(chuàng)作于2023年2月完整的C++程序(1)
#include<graphics.h>#include<conio.h>enumBoolean{false,true};classLocation{ protected: intx; inty; public: Location(intInitX,intInitY); intGetX(); intGetY();};第7頁,課件共17頁,創(chuàng)作于2023年2月完整的C++程序(2)
classPoint:publicLocation{ protected: BooleanVisible; public: Point(intInitX,intInitY); voidShow(); voidHide(); BooleanIsVisible();};第8頁,課件共17頁,創(chuàng)作于2023年2月完整的C++程序(3)
classCircle:publicPoint{ protected: intRadius; public: Circle(intInitX,intInitY,intInitRadius); voidShow(); voidHide(); intGetRadius();};第9頁,課件共17頁,創(chuàng)作于2023年2月完整的C++程序(4)
classArc:publicCircle{ private: intStartAngle; intEndAngle; public: Arc(intInitX,intInitY,intInitRadius,intInitStartAngle,intInitEndAnagle); voidShow(); voidHide(); intGetStartAngle(); intGetEndAngle();};第10頁,課件共17頁,創(chuàng)作于2023年2月完整的C++程序(5)
Location::Location(intInitX,intInitY){ x=InitX; y=InitY;}intLocation::GetX(){ returnx;}intLocation::GetY(){ returny;}第11頁,課件共17頁,創(chuàng)作于2023年2月完整的C++程序(6)
Point::Point(intInitX,intInitY):Location(InitX,InitY){ Visible=false;}voidPoint::Show(){ Visible=true; putpixel(x,y,getcolor());}voidPoint::Hide(){ Visible=false; putpixel(x,y,getbkcolor());}Putpixel:在指定位置畫一像素getcolor:返回當前畫線顏色Getbkcolor:返回當前背景顏色第12頁,課件共17頁,創(chuàng)作于2023年2月完整的C++程序(7)
BooleanPoint::IsVisible(){ returnVisible;}Circle::Circle(intInitX,intInitY,intInitRadius):Point(InitX,InitY){ Radius=InitRadius;}Circle::Show(){ Visible=true; circle(x,y,Radius);}第13頁,課件共17頁,創(chuàng)作于2023年2月完整的C++程序(8)
voidCircle::Hide(){ intTempColor; TempColor=getcolor(); setcolor(getbkcolor()); Visible=false; circle(x,y,Radius); setcolor(TempColor);}intCircle::GetRadius(){ returnRadius;}setcolor:庫函數(shù)圖形屏幕函數(shù)
setcolor(color)
功能:將當前圖形屏幕的當前筆畫顏色置為color.第14頁,課件共17頁,創(chuàng)作于2023年2月完整的C++程序(9)
Arc::Arc(intInitX,intInitY,intInitRadius,intInitStartAngle,intInitEndAngle):Circle(InitX,InitY,InitRadius){ StartAngle=InitStartAngle; EndAngle=InitEndAngle;}voidArc::Show(){ Visible=true; arc(x,y,StartAngle,EndAngle,Radius);}intArc::GetStartAngle(){ returnStartAngle;}第15頁,課件共17頁,創(chuàng)作于2023年2月完整的C++程序(10)voidArc::Hide(){ intTempColor; TempColor=getcolor(); setcolor(getbkcolor()); Visible=false; arc(x,y,StartAngle,EndAngle,Radius); setcolor(TempColor);}intArc::GetEndAngle(){ returnEndAngle;}第16頁,課件共17頁,創(chuàng)作于2023年2月
voidmain(){
Circlec1(100,100,40),c2(200,300,20); Arca1(400,150,50,30,120); c1.Show(); c2.Show(); a1.Show(); getch(); closegraph();//關閉圖形系統(tǒng)
}graphdriver是指向圖形驅動
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 未來十年移動支付的科技發(fā)展趨勢預測
- 標準化管理在生產現(xiàn)場的挑戰(zhàn)與對策
- 現(xiàn)代音樂文化的全球化傳播路徑
- 13人物描寫一組(說課稿)2023-2024學年統(tǒng)編版語文五年級下冊
- Unit 1 Playtime Lesson 3(說課稿)-2023-2024學年人教新起點版英語二年級下冊001
- 25 少年閏土 第二課時 說課稿-2024-2025學年語文六年級上冊 統(tǒng)編版
- Unit1 London is a big city(說課稿)2023-2024學年外研版(三起)四年級下冊
- 2024-2025學年高中生物 第七章 現(xiàn)代生物進化理論 第1節(jié) 現(xiàn)代生物進化理論的由來說課稿3 新人教版必修2
- Unit 2 Being a good language learner Exploring and Using 說課稿-2024-2025學年高中英語重大版(2019)必修第一冊
- 2025挖掘機勞動合同范文
- 北師大版五年級上冊四則混合運算100道及答案
- 專項債券在燃氣基礎設施建設中的融資作用
- 人教部編版道德與法治八年級下冊:6.3 《國家行政機關》說課稿1
- GE-LM2500+G4航改燃氣輪機在艦船和工業(yè)上的應用
- 2024山東能源集團中級人才庫選拔(高頻重點提升專題訓練)共500題附帶答案詳解
- 鋼鐵是怎樣煉成的讀后感作文700字
- 武漢市江夏區(qū)2022-2023學年七年級上學期期末數(shù)學試卷【帶答案】-109
- 學校物業(yè)服務合同范本專業(yè)版
- SL 288-2014 水利工程施工監(jiān)理規(guī)范
- 部編版八年級語文上冊期末考試卷
- 2024年02月中央軍委后勤保障部2024年公開招考專業(yè)技能崗位文職人員筆試參考題庫附帶答案詳解
評論
0/150
提交評論