C語言圖形程序設(shè)計基礎(chǔ).pptx
《C語言圖形程序設(shè)計基礎(chǔ).pptx》由會員分享,可在線閱讀,更多相關(guān)《C語言圖形程序設(shè)計基礎(chǔ).pptx(96頁珍藏版)》請在匯文網(wǎng)上搜索。
1、2023/8/22西安工程大學(xué)數(shù)學(xué)系1 3.1、屏幕設(shè)置、屏幕設(shè)置v我們在屏幕上進(jìn)行繪制圖形,一般要按以下幾個步驟我們在屏幕上進(jìn)行繪制圖形,一般要按以下幾個步驟執(zhí)行:執(zhí)行:(1)把屏幕設(shè)置為圖形模式;)把屏幕設(shè)置為圖形模式;(2)選擇背景與顯示實(shí)體的顏色;)選擇背景與顯示實(shí)體的顏色;(3)計算圖形顯示坐標(biāo);)計算圖形顯示坐標(biāo);(4)調(diào)用繪圖語句繪制實(shí)體)調(diào)用繪圖語句繪制實(shí)體3.1.1、屏幕顯示模式與坐標(biāo)系、屏幕顯示模式與坐標(biāo)系1.1.文本模式與字符坐標(biāo)系文本模式與字符坐標(biāo)系文本模式與字符坐標(biāo)系文本模式與字符坐標(biāo)系 在屏幕上只能顯示字符的方式稱為文本模式在屏幕上只能顯示字符的方式稱為文本模式。在
2、文本模。在文本模式下,屏幕上可以顯示的最小單位是字符。為了能在指定式下,屏幕上可以顯示的最小單位是字符。為了能在指定的位置顯示每個字符,的位置顯示每個字符,C語言提供了語言提供了字符坐標(biāo)系字符坐標(biāo)系。C語言圖形程序設(shè)計基礎(chǔ)語言圖形程序設(shè)計基礎(chǔ)2023/8/22西安工程大學(xué)數(shù)學(xué)系2v字符坐標(biāo)系字符坐標(biāo)系是以屏幕的左上角為坐標(biāo)原點(diǎn),水平方向?yàn)槭且云聊坏淖笊辖菫樽鴺?biāo)原點(diǎn),水平方向?yàn)?X軸,垂直方向?yàn)檩S,垂直方向?yàn)閅軸,如下圖軸,如下圖-1所示:所示:圖圖-1 字符坐標(biāo)系字符坐標(biāo)系Max xMax y(1,1)注:字符坐標(biāo)系的原點(diǎn)為(注:字符坐標(biāo)系的原點(diǎn)為(1,1),水平方向(),水平方向(X軸)分為
3、若干列,垂直方向軸)分為若干列,垂直方向(Y軸)分為若干行,用一對坐標(biāo)可以指定屏幕上一個位置。軸)分為若干行,用一對坐標(biāo)可以指定屏幕上一個位置。(8,20)表示字符表示字符位于屏幕位于屏幕的第的第8行行第第20列列C語言圖形程序設(shè)計基礎(chǔ)語言圖形程序設(shè)計基礎(chǔ)2023/8/22西安工程大學(xué)數(shù)學(xué)系3 (1)BW40:黑白:黑白40列方式。顯示列方式。顯示25行文本,其中每行行文本,其中每行40個個字符,以黑白兩色顯示。字符,以黑白兩色顯示。(2)C40:彩色:彩色40列方式??娠@示列方式??娠@示40列列25行彩色字符。行彩色字符。(3)BW80:黑白:黑白80列方式??娠@示列方式??娠@示80列列25
4、行字符。行字符。(4)C80:彩色:彩色80列列25行顯示方式。行顯示方式。(5)MONO:單色:單色80列列25行顯示方式。行顯示方式。(6)C4350:一種特殊的彩色文本方式,適和:一種特殊的彩色文本方式,適和EGA和和VGA兩兩種適配器。種適配器。若用若用EGA適配器,顯示適配器,顯示80列列43行;若用行;若用VGA適配適配器,則顯示器,則顯示80列列50行行。C語言圖形程序設(shè)計基礎(chǔ)語言圖形程序設(shè)計基礎(chǔ)由于由于顯示模式顯示模式的不同的不同,所顯示的字符的列數(shù)和行數(shù)以及顏色也不所顯示的字符的列數(shù)和行數(shù)以及顏色也不相同。相同。C支持以下支持以下6種不同的顯示方式。種不同的顯示方式。2023
5、/8/22西安工程大學(xué)數(shù)學(xué)系4在不同的顯示模式下,屏幕所顯示的字符數(shù)量也不一樣。在不同的顯示模式下,屏幕所顯示的字符數(shù)量也不一樣。X方向一般為方向一般為40列或列或80列,列,Y方向一般為方向一般為25行,但行,但EGA和和VGA適配器可達(dá)適配器可達(dá)43行或行或50行。行。在文本模式下,屏幕最多可顯示在文本模式下,屏幕最多可顯示80X50=4000個字符,至個字符,至少可顯示少可顯示40X25=1000個字符。顯示字符越多,每個字符個字符。顯示字符越多,每個字符尺寸越小,反之越大尺寸越小,反之越大。顯示模式不同,屏幕坐標(biāo)的構(gòu)成也不相同。比如:顯示模式不同,屏幕坐標(biāo)的構(gòu)成也不相同。比如:(1)在
6、)在BW40方式下,最大坐標(biāo)位置為(方式下,最大坐標(biāo)位置為(25,40););(2)在)在C4350方式下,最大坐標(biāo)位置為(方式下,最大坐標(biāo)位置為(50,80););注:注:C語言圖形程序設(shè)計基礎(chǔ)語言圖形程序設(shè)計基礎(chǔ)2023/8/22西安工程大學(xué)數(shù)學(xué)系52.2.圖形模式與點(diǎn)坐標(biāo)系圖形模式與點(diǎn)坐標(biāo)系圖形模式與點(diǎn)坐標(biāo)系圖形模式與點(diǎn)坐標(biāo)系 在屏幕上顯示圖形的方式稱為圖形模式在屏幕上顯示圖形的方式稱為圖形模式。在圖形。在圖形模式下模式下,屏幕是由像素點(diǎn)組成的屏幕是由像素點(diǎn)組成的,像素點(diǎn)的多少決定像素點(diǎn)的多少決定了屏幕的分辨率。分辨率越高了屏幕的分辨率。分辨率越高,顯示圖形越細(xì)致顯示圖形越細(xì)致,質(zhì)質(zhì)量越
7、好。量越好。v如右圖所示1.屏幕由許多像素點(diǎn)屏幕由許多像素點(diǎn)組成;組成;2.圖形的顯示效果取圖形的顯示效果取決于分辨率的高低;決于分辨率的高低;C語言圖形程序設(shè)計基礎(chǔ)語言圖形程序設(shè)計基礎(chǔ)2023/8/22西安工程大學(xué)數(shù)學(xué)系6v例如:例如:CGA顯示器的分辨率為顯示器的分辨率為300X200,TVG顯顯示器的分辨率為示器的分辨率為1024X768,TVGA比比CGA分率高。分率高。圖圖-2 點(diǎn)坐標(biāo)系點(diǎn)坐標(biāo)系Max xMax y(0,0)注:點(diǎn)坐標(biāo)系坐標(biāo)值的注:點(diǎn)坐標(biāo)系坐標(biāo)值的范圍取決于所用的范圍取決于所用的適配適配器器/顯示分辨率顯示分辨率C語言圖形程序設(shè)計基礎(chǔ)語言圖形程序設(shè)計基礎(chǔ)v 在圖形模式
8、下,屏幕上每個像素的顯示位置用點(diǎn)在圖形模式下,屏幕上每個像素的顯示位置用點(diǎn) 坐標(biāo)來描述的。點(diǎn)坐標(biāo)系坐標(biāo)來描述的。點(diǎn)坐標(biāo)系是以屏幕左上角為坐標(biāo)原點(diǎn)是以屏幕左上角為坐標(biāo)原點(diǎn)(0,0),水平方向?yàn)椋?,水平方向?yàn)閄軸,自左向右;垂直方向?yàn)檩S,自左向右;垂直方向?yàn)閅軸,自上向下軸,自上向下。如下圖所示:。如下圖所示:2023/8/22西安工程大學(xué)數(shù)學(xué)系7v由于屏幕的分辨率不同,水平方向和垂直方向的點(diǎn)數(shù)也不由于屏幕的分辨率不同,水平方向和垂直方向的點(diǎn)數(shù)也不一樣,從而一樣,從而點(diǎn)坐標(biāo)系的點(diǎn)坐標(biāo)系的Max x、Max y 數(shù)值數(shù)值也不也不同。同。v在在TurboC中,坐標(biāo)數(shù)據(jù)可以用兩種形式給出:中,坐標(biāo)數(shù)據(jù)可
9、以用兩種形式給出:一種是絕一種是絕對坐標(biāo),另一種是相對坐標(biāo)。對坐標(biāo),另一種是相對坐標(biāo)。(1)絕對坐標(biāo)絕對坐標(biāo)的參考點(diǎn)是坐標(biāo)的原點(diǎn)(的參考點(diǎn)是坐標(biāo)的原點(diǎn)(0,0),),x和和y只只能取規(guī)定范圍(能取規(guī)定范圍(0,Max x)和()和(0,Max y)內(nèi)的正整)內(nèi)的正整數(shù);數(shù);(2)相對坐標(biāo)相對坐標(biāo)是相對是相對“當(dāng)前點(diǎn)當(dāng)前點(diǎn)”的坐標(biāo),其坐標(biāo)的參考的坐標(biāo),其坐標(biāo)的參考點(diǎn)是當(dāng)前點(diǎn)。在相對坐標(biāo)中,點(diǎn)是當(dāng)前點(diǎn)。在相對坐標(biāo)中,x和和y的取值是相對當(dāng)前點(diǎn)的取值是相對當(dāng)前點(diǎn)在在x方向和方向和y方向上的增量,故方向上的增量,故x和和y可以為正整數(shù),也可可以為正整數(shù),也可以為負(fù)整數(shù)。以為負(fù)整數(shù)。C語言圖形程序設(shè)計基
10、礎(chǔ)語言圖形程序設(shè)計基礎(chǔ)2023/8/22西安工程大學(xué)數(shù)學(xué)系83.1.2、圖形驅(qū)動程序與圖形模式、圖形驅(qū)動程序與圖形模式1.1.圖形驅(qū)動程序圖形驅(qū)動程序圖形驅(qū)動程序圖形驅(qū)動程序 對于不同的圖形顯示器,其控制方式各有差異,對于不同的圖形顯示器,其控制方式各有差異,因此要因此要顯示圖形就需要先裝入相應(yīng)的圖形驅(qū)動程序顯示圖形就需要先裝入相應(yīng)的圖形驅(qū)動程序。TurboC 支支持以下幾種圖形驅(qū)動程序:持以下幾種圖形驅(qū)動程序:符號常量符號常量 數(shù)值數(shù)值 符號常量符號常量 數(shù)值數(shù)值DETECT0IBM85146CGA1HERCMONO7MCGA2ATT4008EGA3VGA9EGA644PC327010EGA
11、MONO5C語言圖形程序設(shè)計基礎(chǔ)語言圖形程序設(shè)計基礎(chǔ)2023/8/22西安工程大學(xué)數(shù)學(xué)系92.2.圖形模式圖形模式圖形模式圖形模式 由于每種圖形顯示器都有幾種不同的圖形顯示模式,所由于每種圖形顯示器都有幾種不同的圖形顯示模式,所以要顯示圖形,不但要先以要顯示圖形,不但要先裝入相應(yīng)的驅(qū)動程序裝入相應(yīng)的驅(qū)動程序,而且還要,而且還要決定所用的顯示模式?jīng)Q定所用的顯示模式。TurboC 常采用的幾種圖形驅(qū)動程常采用的幾種圖形驅(qū)動程序及相應(yīng)的模式序及相應(yīng)的模式驅(qū)動程序驅(qū)動程序(driver)圖形(圖形(gmode)等價值等價值分辨(分辨(dpi)CGAC00320X200 CGACGACGAC11320X
12、200CGAC22320X200CGAC33320X200CGAHI4640X200表表2.2 圖形驅(qū)動程序及相應(yīng)的模式圖形驅(qū)動程序及相應(yīng)的模式C語言圖形程序設(shè)計基礎(chǔ)語言圖形程序設(shè)計基礎(chǔ)2023/8/22西安工程大學(xué)數(shù)學(xué)系10驅(qū)動程序驅(qū)動程序(driver)圖形圖形(gmode)等價值等價值分辨(分辨(dpi)EGAEGAHI0640X200EGALO1640X350VGALO0640X200VGAVGAMED1640X350VGAHI2640X480v注注:1.不同的圖形驅(qū)動程序有不同的圖形模式不同的圖形驅(qū)動程序有不同的圖形模式;2.同一圖形驅(qū)動程序同一圖形驅(qū)動程序,也可能會有幾種圖形也可能
13、會有幾種圖形模式模式;C語言圖形程序設(shè)計基礎(chǔ)語言圖形程序設(shè)計基礎(chǔ)2023/8/22西安工程大學(xué)數(shù)學(xué)系11vTurboC提供了十分豐富的圖形庫函數(shù),共有提供了十分豐富的圖形庫函數(shù),共有70多個,多個,所有圖形函數(shù)的原型均在頭文件所有圖形函數(shù)的原型均在頭文件“graphics.h”中定中定義。所以,在任何使用圖形函數(shù)的程序中,都要求其義。所以,在任何使用圖形函數(shù)的程序中,都要求其頭部包含文件頭部包含文件graphics.h,即在程序文件的開頭寫上,即在程序文件的開頭寫上文件包含命令:文件包含命令:#include 同時將集成開發(fā)環(huán)境同時將集成開發(fā)環(huán)境option/Linker中的中的graphic
14、s.lib選項(xiàng)設(shè)置為選項(xiàng)設(shè)置為”on”。下面我們介紹:下面我們介紹:圖形系統(tǒng)的初始化圖形系統(tǒng)的初始化、圖形系統(tǒng)的關(guān)閉圖形系統(tǒng)的關(guān)閉、圖形模式控制。圖形模式控制。3.1.3、圖形系統(tǒng)初始化和模式控制、圖形系統(tǒng)初始化和模式控制C語言圖形程序設(shè)計基礎(chǔ)語言圖形程序設(shè)計基礎(chǔ)2023/8/22西安工程大學(xué)數(shù)學(xué)系12v圖圖形形系系統(tǒng)統(tǒng)初初始始化化首首先先要要調(diào)調(diào)用用initgraph()函函數(shù)數(shù),它它通通過過從從磁磁盤盤上上裝裝入入一一個個圖圖形形驅(qū)驅(qū)動動程程序序來來初初始始化化圖圖形形系系統(tǒng)統(tǒng),并將系統(tǒng)設(shè)置為并將系統(tǒng)設(shè)置為圖圖形模式形模式形模式形模式。1.1.圖形系統(tǒng)的初始化圖形系統(tǒng)的初始化 圖形模式是有
15、別于文本模式的一種計算機(jī)屏幕顯示模圖形模式是有別于文本模式的一種計算機(jī)屏幕顯示模式。屏幕一般在默認(rèn)情況下為式。屏幕一般在默認(rèn)情況下為80列列25行的文本模式,行的文本模式,在文本模式下,所有的圖形函數(shù)均不能操作,在文本模式下,所有的圖形函數(shù)均不能操作,因此在使因此在使用圖形函數(shù)繪圖之前,必須將屏幕顯示適配器設(shè)置為一用圖形函數(shù)繪圖之前,必須將屏幕顯示適配器設(shè)置為一種圖形模式,即為種圖形模式,即為圖形初始化過程。圖形初始化過程。C語言圖形程序設(shè)計基礎(chǔ)語言圖形程序設(shè)計基礎(chǔ)2023/8/22西安工程大學(xué)數(shù)學(xué)系13功能功能 將圖形驅(qū)動軟件裝入內(nèi)存,使屏幕顯示適配器設(shè)置為圖形模式,即圖形系統(tǒng)初始化;說明說
16、明 1.gdriver是一個整型值,用來指定要裝入的圖形驅(qū)動程序;該值在頭文件graphics.h中定義;中定義;2.gmode是一個整型值,用來設(shè)置圖形顯示模式。圖形顯示模式?jīng)Q定了顯示的分辨率和顯示的顏色的多少等;3.path是一個字符串,用來指明圖形驅(qū)動程序所在的路徑.1.若驅(qū)動程序就在用戶當(dāng)前目錄下,則若驅(qū)動程序就在用戶當(dāng)前目錄下,則path可為空字符串,否則應(yīng)可為空字符串,否則應(yīng)給出具體路徑名給出具體路徑名。一般情況下一般情況下,TurboC安裝在安裝在C盤的盤的TC目錄中,則該目錄中,則該路徑為:路徑為:C:TC,若寫在參數(shù)中則為若寫在參數(shù)中則為“C:TC”;2.前兩個參數(shù)實(shí)際上是整
- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
19.9 積分
下載 | 加入VIP,下載共享資源 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 語言 圖形 程序設(shè)計 基礎(chǔ)