Автор работы: Пользователь скрыл имя, 20 Февраля 2012 в 15:56, реферат
Турбо Паскаль графикасын, көбінесе, псевдо - графика деп атайды, өйткені тілдің өзінде графикалық командалары келтірілмеген. GRAPH модулінде графикалық информацияларды дисплей экранына шығаруға және өңдеуге арналған командаларды сүйемелдейтін типтер, тұрақтылар, айнымалылар, процедуралар мен функциялар сипатталады.
I. Кріспе
II. Негізгі бөлім
1. Графикалық экранның режимі
1. Дисплей графикалық экранының режимі
2. Графикалық экран режимінің сипаттамалары
3. Экранның графикалық режимінің мүмкіндігі
4. Графикалық режимдегі палитра
5. Экрандық беттер мөлшері
2. GRAPH модулі
1. Графикалық режимді тағайындау және одан шығу
2. GRAPH модулі
3. Кейбір фунуциялар мен процедуралар
4. Графикалық режимді басқару командалары(экран, фон)
3. Программулау негіздері
1. Графикалық экранға нүкте шығару
2. Графикалық экранға кесінді салу
3. Кесінді салу стилі
4. Экранда көпбұрыш тұрғызу
5. Шеңбер, эллипс және олардың доғаларын тұрғызу
6. Толтыру процедуралары
7. Графикалық режимде экранға текст шығару
8. Функция графигін салу
III. Қорытынды
Графикалық драйверлерді анықтау және олардың жұмыс режимдерін қою тұрақтылары (тәжірибеде жиі пайдаланатын режимдер) төмендегі кестеде толық берілген:
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 — У-тің координатасын қайтару.
Графикалық экранды басқарудың негізгі командалары
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(х, у), мұндағы х, у – кесіндінің соңғы нүктесінің координатасы.
LineRel процедурасы – кесіндіні ағымдағы түспен курсор тұрған нүктеден қосымша өзгертілген нүктенің координатасына дейін кесінді сызады.
Форматы: LineRel (dх, dу). Мұндағы dх, dу – қосымша көрсетілген (өзімше) нүктенің координатасы.
Кесіндіні шығару стилі /сызықтық қалыңдықтары және түрлері/
GRAPH модулінде шығарылатын кесіндінің түрін, стилін анықтайтын командалар да бар.