Автор: Пользователь скрыл имя, 27 Апреля 2012 в 11:27, реферат
Қазіргі дербес компьютерлердің графикалық информацияларды енгізу, шығару және өңдеуге арналған техникалық құрылғылары бар. Графикалық информацияны енгізу үшін — сканер, ал шығару үшін дисплей экраны және плоттер пайдаланылады.
Кіріспе..............................................................................................................2
Тарау І. Графикалық экранның режимі
1.1.Дисплей графикалық экранының режимі.........................................3
1.2.Графикалық экран режимінің сипаттамалары.................................3
1.3.Графикалық режимдегі палитра........................................................4
1.4.Экрандық беттер мөлшері.................................................................4
Тарау ІІ. Паскаль тілінде графикалық режиммен жұмыс
2.1.Графикалық режимді тағайындау және одан шығу.......................6
2.2.Графикалық режимді басқару командалары(экран, фон).............10
2.3. Функция графигін салу..................................................................16
Қорытынды...................................................................................................18
Қолданылған әдебиеттер...........................................................................19
Графикалық
драйверлерді анықтау және олардың
жұмыс режимдерін қою тұрақтылары
(тәжірибеде жиі пайдаланатын режимдер)
төмендегі кестеде толық
DRIVER | MODE |
Detect =0 | EGALo =0 {640×200; 16 түс; 4 бет} |
CGA =1 | EGAHi =1 {640×350; 16 түс; 2 бет} |
MCGA =2 | EGA64Lo =0 {640×200; 16 түс; 1 бет} |
EGA =3 | EGA64Hi =1 {640×350; 4түс; 1 бет} |
EGA64 =4 | EGAMonoHi =3 {640×350; 64К : 1 бет; 256К : 2 бет} |
EGAMono=5 | VGALo =0 {640×200; 16 түс; 4 бет} |
IBM8514 =6 | VGAMed =1 {640×350; 16 түс; 2 бет} |
HereMono=7 | VGAHi =2 {640×480; 16 түс; 1 бет} |
Att400 =8 | PC3270Hi =0 {720×350; 1 бет} |
VGA =9 | IBM8514Lo =0 {640×480; 256 түс} |
PC3270 =10 | VGA8514Hi =1 {1024×768; 256 түс} |
Графикалық режимінің тағайындалу нәтижесіекі функция модулінің мәндерінен көрінедіGRAPHresult: integer, аргументсіз инициализация нәтижесінің коды үшін және GRAPHerror (<қате коды>):string – инициализация қатесінің себебін ағылшын тілінде хабарлау үшін.
GRAPHresults функциясы кез-келген функция немесе процедура модульдерінің орындалуындағы қатенің кодын береді. Код міндері: 0...14. егер код нольге тең болса, онда орындалуда қате жоқ, GRAPHresult=0 графикалық режимінің дұрыс тағайындалғанын көрсетеді, яғни қатесіз тағайындау; Ал егер GRAPHresult ‹ › 0 мәнін қабылдаса, мысалы, код – 3 – BGI графикалық драйверінің табылмағанын көрсетеді.
Программада
инициализация (нақтылау үшін) жасау
үшін мынадай операторлар мен
сөйлемдерді жазу қажет.
USES GRAPH CRT;
Var driver, regim, error: integer;
. . .
driver:=detect;
INITGRAPH(driver, regim, ‘ ‘);
error:=Graphresult;
if error < >0 then
begin
writeln(‘Графикалық режимде қате бар!’);
writeln(‘tokta!’);
s:=readkey
end;
…
Графикалық
режимде жұмыс
істеу программасы
PROGRAM PROBA;
USES GRAPH;
VAR DRIVER, MODE ___ : INTEGER;
BEGIN
DRIVER:=DETECT;
INITGRAPH(DRIVER, MODE, ‘C:/BP/BGI’);
. . .
CLOSEGRAPH
END
GRAPH.TPU
модулі
Графикалық режимді тағайындағаннан кейін пайдаланушы өзінің жұмысы үшін әртүрлі команда пайдаланады. Бұл командалар қызметі бойынша төмендегідей топталады:
графикалық экранды басқару
графикалық информацияны өңдеу және шығару үшін;
графикалық режимде текст
Графикалық экранды басқару командалары
пайдаланылған драйвер туралы информацияны алу;
графикалық режимдердің
графикалық экранның жұмысына қажетті режимді тағайындау;
экранның графикалық беттерін басқару;
графикалық информациямен
графикалық инормациямен шығару және фон түстерін басқару;
экранды графикалық курсормен басқару;
экранды немесе терезені тазарту жатады.
Графикалық информациямен енгізу және шығару командалары:
графикалық экранға нүкте, кесінді, тіктөртбұрыш, қисық сызық, шеңбер, элипс, доға, элипс және шеңбер секторларының шығару процедуралары;
динамикалық жадыға графикалық экранның бөліктерін бейнелерімен сақтау және оны қайтадан экранға шығару;
экрандағы тұйықтарды белгілі бір түстермен бояу не штрихтау.
Графикалық режимде экранға текст шығару командалары — графикалық эктанға string типті текст жолын шығаруға мүмкіндік береді.
GRAPH
модулінің командалары графикалық экранда
кез-келген бейнені тұрғызуға мүмкіндік
береді.
Graph
модуліндегі
кейбір функциялар
мен процедуралардың
қысқаша сипаттамалары:
Procedure PutPixel (X,Y: Integer; Pixel: Word) — нүкте салу
Procedure Line (x1,y1, x2, y2:Integer) — сызық слау
Procedure LineRel (Dx, Dy : Integer) — салыстырмалы координатада сызық салу
Procedure Line To (X,Y: Integer) — көрсетілген нүктеге дейін сызық салу
Procedure Move To (X,Y: Integer) — экранды көрсетілген нүктеге жылжыту
Procedure Move Rel (Dx, Dy: integer) — көрсеткішті (dx, dy) векторына ығыстырады.
Procedure Out Text (Text String: string) — текст шығару
Procedure Out TextXY(X,Y: Integer, Text String: string) — көрсетілген нүктеден текст шығару
Procedure RestoreCrtMode — тексттік режимге қайта оралу
Procedure SetColor (Color: Word) — сызықтың, нүктенің және т.б. түсін беру
Procedure SetFillPattern (Pattern: FillPattern Type; Color: Word) — кез-келген тұйық фигураны бояу
Procedure Set Fill Style (Pattern: Word; Color: Word) — бояу, толтыру стилін орнату
Procedure Set Text Style (f, n, r : word) — мәтінді экранға шығару параметрін анықтайды (f – шрифт(0,1,2,3,4) n – бағыт (0,1) r – шрифт өлшемі (1,×4)).
Procedure SetRGBPalette(c, r, g, b: Sortint) — c түстің қызыл, жасыл, көк құраушыларын өзгертеді (0 ≤ r, g, b ≤ 63)
Procedure Arc (X,Y :Integer; StAngel, EndAngle, Radius : Word) — шеңбер доғасын салу
Procedure Sector (x,y : Integer, StAngle, EndAngl, Xradius, YRadius:Word)—сектор салу және бояу
Procedure Rectangle (x1,y1, x2,y2: Integer) — тіктөртбұрыш салу
Procedure Bar (x1,y1,x2,y2: Integer) — боялған тіктөртбұрыш салу
Procedure Bar3D (x1,y1,x2,y2:Integer; Depth:Word; Top: Boolean) —боялған параллелепипед салу
Procedure GetImage (x1, y1, x2, y2 : integer; A: pointer) — кескіннің көрсетілген төртбұрышты фрагментін жадыда сақтайды
Procedure PutImage (x, y: integer; A: pointer; M: SortInt) — жадыда сақталған кескін фрагментін берілген режимге (0...4) сәйкес экранның көрсетілген орнына шығарады.
Procedure Circle (X,Y: Integer; Radius: Word) — шеңбер салу
Procedure Clear Device — экранды тазалау және оны фон түсімен бояу
Procedure Clear ViewPort — терезені тазалау және оны 0 түспен бояу
Procedure CloceGraph — графикалық режимнен шығу
Procedure DrowPoly (NumPoints : Word; var PolyPoints) — көбұрыш салу
Procedure Ellipse (XY: Integer; StAngle, EndAngle : Word; Xradius, Yradius: Word) — эллипс салу
Procedure FillEllipse (X,Y: Integer; Xradius, Yradius: Word) — боялған эллипс
Procedure FillPoly (NumPoints : Word; var PolyPoints) — боялған көпбұрыш
Procedure FloodFill (X,Y: Integer; Border: Word)—ағымдағы түспен тұйық фигураны бояу
Function GetColor : Word — сызықтар мен контурлардың түсін қайтару
Function GetMaxX : Integer — Х-тің ең үлкен координатасын қайтарады
Function GetMaxY : Integer — У-тің ең үлкен координатасын қайтарады
Function GetPixel (X,Y : Integer) : Word — пиксель түсін қайтару
Function GetX : Integer — Х-тің координатасын қайтару
Function
GetY : Integer — У-тің координатасын қайтару.
2.2.Графикалық
экранды басқарудың
негізгі командалары
INITGRAPH – графикалық режимді тағайындау
DETECT – графикалық драйверді автоматты түрде анықтау
CLOSEGRAPH – графикалық режимді жабу
SETGRAPHMODE – жаңа графикалық режимді тағайындайды. SETGRAPHMODE ‹режим› мұндағы режим – код немесе режим номері
CLEARDevice – процедурасы графикалық экранды
тазалайды. CLAERDevice – форматы
Экраннның барлық түзетулері, бастапқы қалыпқа келтіріліп, курсор экранының 0,0 нүктесіне келеді.
SetViewPort процедурасы төртбұрыш терезені тағайындайды. Форматы: SetViewPort (х1, у1, х2, у2 ‹қиық›)
мұндағы х1, у1, х2, у2 - тіктөртбұрштың сәйкес сол жақ жоғарғы және оң жақ төменгі координатасы, типі iteger; ‹қиық› - типі boolean, егер true мәнін қабылдаса, терезе шекарасымен өтеді; ал false мәнін қабылдаса, керісінше.
ClaerViewPort процедурасы – терезені тазалайды
GetMaxX және GetMaxY функциясы – тағайындалған графикалық режимде экранның х және у осьтері бойынша ең үлкен координатасының мәнін анықтайды.
Типі integer, форматы: GetMaxX, GetMaxY.
MoveTo процедурасы курсорды көрсетілген координатаға орналастырады; форматы: MoveTo(х, у)
GETX және GETY функциялары курсордың ағымдағы координатасын анықтайды. Форматы: GETX және GETY
SetPalette процедурасы — берілген бояудағы түстің реттік номері үшін стандартты бояудағы түсті өзгертуге мүмкіндік береді.
SetAllPalette процедурасы – алдыңғысындағыдай, бояудағы түстің барлық реттік номерін өзгертеді.
GetPalette процедурасы ағымдағы бояудың сипаттамасын береді: түстердің мөлшерін, кодын.
GetPaletteSize функциясы – ағымдағы графикалық режимнің бояуындағы түстердің мөлшерін типін береді.
GetDefaultPalette процедурасы – ескертусіз тағайындалған графикалық режимнің бояулардың сипаттамасын береді(режимнің стандартты бояуы).
SetColor процедурасы – графикалық немесе тексттік информацияны графикалық экранға шығаратын ағымдағы түсті тағайындайды: SetColor(‹түс›). Мұндағы ‹түс› : Word – түс номерін көрсетеді.
GetMaxColor функциясы – ағымдағы шығарылатын түстің номерін береді.
Форматы : GetMaxColor.
GetColor функциясы – ағымдағы графикалық режимдегі түстің ең үлкен номерін береді.
Форматы: GetColor мәнінің типі Word.
SetBkColor процедурасы орындалғанда графикалық экранның ағымдағы фонның түсі берілген түске өзгереді.
Форматы: SetBkColor (‹түсі›); мұндағы түс – Word типті түстің номері.
GetBkColor функциясы – шығарылатын ағымдағы фонның түсін береді. Форматы: GetBkColor; мәнінің типі Word.
GetMaxColor функциясы ағымдағы графикалық режимде тұратын түстің ең жоғарғы номерін береді.
Форматы:
GetMaxColor; мәнінің типі Word.
Графикалық
экранға нүкте
шығару
PutPixel процедурасы экранға нүктені көрсетілген координатасымен және түсімен шығарады.
Форматы: PutPixel(х, у, С); мұндағы х, у - типі Word, нүктенің координатасы, С – түсі, типі.
GetPixel
функциясы – координатасы көрсетілген
экранның графикалық нүктесінің түсін
анықтайды. Форматы: GetPixel (х, у, С); мұндағы
х, у – типі Word нүктенің координатасы.
Графикалық
экранға кесінді
салу
LINE процедурасы бастапқы және соңғы нүктелерінің көрсетілген координатасы бойынша кесінді салады.
Форматы Line (х1, у1, х2, у2); мұндағы х1, у1 – бастапқы нүктенің координатасы, х2, у2 – соңғы нүктенің координатасы.
LineTo процедурасы – кесіндіні ағымдағы курсор тұрған нүктеден координатасы көрсетілген нүктеге дейін сызады. Форматы: LineTo(х, у), мұндағы х, у – кесіндінің соңғы нүктесінің координатасы.