Turbo pascal


1. 1. Graph модулi

Turbo Pascal программалау тiлiнде символдык режимнен бөлек графиктiк режимде жұмыс iстеуге болады. Онда әртурлi графиктiк кескiндер кұрастыру мумкiндiгi бар. Turbo Pascal графиктiк мумкiндiктеркiн пайдалану үшiн арнайы “GRAPH” кiтапханасы iске қосылады. GRAPH модулiнiн графиктiк процеду-раларыменен функцияларын қолданып графиктiк кесiндердi құрастыруга болады. GRAPH модулiнде орналаскан процедуралар мен функцияларды пайдалану үшiн программанын сипаттау болiмiнде көрсетiледi:

USES GRAPH.

Turbo Pascal-7. 0 ортасын қолданатын Паскаль тiлiнде программалауда Graph модулiнiн 132 турактысы, 7 қосымша типi, 2 айнымалысы, 57 процедурасы және 22 функциясы пайдаланылады.

Графиктермен жұмыс iстеу алдында оған сәикес келетiн монитор режимiн орнату қажет. Турбо Паскаль тiлiнде алдын ала бекiтiлген драйверлер саны бар. Олардын әрқайсысы үш турлi режимдердiн бiрiнде жүмыс iстей алады. Драйвер типi мен оның режимi санмен немесе түракты түрiнде берiлген:

Драйверлер
Видеоадаптерлер
Драйверлер: CGA. DGI
Видеоадаптерлер: CGA, MCGA
Драйверлер: EGAVGA. DGI
Видеоадаптерлер: EGA, VGA
Драйверлер: HERC. BGI
Видеоадаптерлер: Hercules (монохромды)
Драйверлер: ATT. BGI
Видеоадаптерлер: AT&T 6300 (400 жол)
Драйверлер: PC3270. BGI
Видеоадаптерлер: 3270 PC
Драйверлер: IBM8514. BGI
Видеоадаптерлер: IBM-8514

GRAPH модулi iске қосылысымен оның iшiндегi процедуралар мен функцияларды пайдалана беруге болады.

Графикалык режимдi iске косу:

InitGraph (Var Driver, Mode: integer; Path: string) ; мунда Driver - графикалық режимдi анықтайтын параметр;

Mode - орнатылған драйвер файлының атауы және жолы.

Driver мәнi Graph модулiнде хабарланған тұрақтылар жиынымен шектеледi.

Көптеген видеоадаптерлер монитордың көрсету мүмкiндiктерiн өзгерте алатын бiрнеше графикалық режимде жұмыс жасай алады. Мәтiндiк режимде экранда 40(80) х 25 символ бейнелеуге болатын болса, графикалық режимде онда бейнеленетiн ең кiшi объект - графикалық нүкте - пиксел деп аталынады. Мысалы: көп қолданылатын VGA адаптерiнiң қалыпты режимiнде экранда 640 х 480 пиксел көрiнедi және олардың 16 тусiн айыруга болады.

Uses Graph операторын программа басына орналастырғанда ғана Graph модулiнiң қызметiн толық пайдалануға мүмкiндiк бар.

InitGraph(Gd, Gm, ’c:\ TP7’) процедурасы дербес компьютерге қойылған видеоадаптердi автоматты түрде тауып, сәйкес графикалық драйвердi iске қосады және оны графикалық режимге көшiредi.

Мүнда ‘с:\ТР7- драйвер файлына апаратын жол. Графикалық драйверлердi анықтау (Gd) және олардың жұмыс режимдерiн қою(Gm) түрактылары төмендегi кестеде берiлген:

Gd
Gm
Gd: Detect =0
Gm: EGALo =0 {640 x 200; 16 ; 4}
Gd: CGA =1
Gm: EGAHi =1 {640 x 350; 16 ; 2 }
Gd: MCGA =2
Gm: EGA64Lo =0 {640 x 200; 16 ; 1 }
Gd: EGA =3
Gm: EGA64Hi =1 {640 x 350; 4 ; 1 }
Gd: EGA64 =4
Gm: EGAMonoHi =3 {640 x 350; 64K: 1 ; 25K:2 }
Gd: EGAMono =5
Gm: VGALo =0 {640 x 200; 16 ; 4 }
Gd: IBM8514 =6
Gm: VGAMed =1 {640 x 350; 16 ; 2 }
Gd: HercMono =7
Gm: VGAHi =2 {640 x 480; 16 ; 1 }
Gd: ATT400 =8
Gm: PC3270Hi =0 {720 x 350; 1 }
Gd: VGA =9
Gm: IBM8514Lo =0 {640 x 480; 256 }
Gd:

PC3270 =10

Gm:

IBM8514Hi =1 {1024 x 768; 256 }

GraphResult функциясының нөлден өзге мәнi ( қателiк коды) режимге көшу қателiгiн көрсетедi.

CloseGraph процедурасы графикалық драйвердi жадтан шығарып, видеоадаптердiң мәтiндiк режимiн қалпына келтiредi.

1. 2Графикалық координаталар жүйесi

Графикалық координаталар экрандағы нуктенiң (пикселдің) орнын анықтайды. Графикалық координаталар ретiнде пикселдердiң реттiк нөмiрi алынады. Мысалы: 640 ч 480 режимiнде х , у координатаслары 0>=X >= 639, 0>=y >=479 аралыкта болады. Х Equation. 3 координатасынын маны онга, ал у координатасынын манi

:

томен караи оседi. х , у шектеулi бүтiн мәндердi ғана қабылдайды.

(0. 0)

y Equation. 3 (369. 479)

Нүетенi экранға бейнелеу үшiн оның декарттық (х, у) координаталарын графикалық (х , у ) координаталарға

Х = mx * x + dx

Y = ry - my * y -dy

Формулаларын қолданып түрлендiруге болады. Мұндағы dx және dy кескiннiң экранның сол жақ жоғарғы шетiне қарағандағы ығысуын қамтамасыз етедi, ал mx, my айнымалыларының мәндерi

rx = mx * x +1

ry = my * y +1

шарттарын қанағаттандыруы тиic (x және у деарт координаталары-ның ең үлкен мәндерi) . Мысалы: кескiндi экранның центрiне орналас-тыру қажет болса

dx = rx div 2, dy = ry div 2

деп аламыз.

1. 2. Графикалық экран мен элементтердiң праметрлерiн қою процедуралары.

Процедура
Қызметi
Процедура: П: MoveTo (x, y: integer)
Қызметi: Көрсеткiштi (х, у) нүктесiне қояды
Процедура: П: МoveRel (dx, dy: integer)
Қызметi: Көрсеткш (dx, dy) векторына ығыстырады
Процедура: П: SetGraphMode (r: integer)
Қызметi: Экранды алынған режимге көшiредi және оны тазалайды.
Процедура: П: SetColor (c: word)
Қызметi: Суреттiң түсiн анықтайды, с: 0- кара, 1- көк, 2- жасыл, 3- көгiлдiр, 4- қызыл, 5- қызгылт, 6- коңыр, 7- ашық сүр, 8- қара сүр, 9- ашық көк, 10- ашық жасыл, 11- ашық көгiлдiр, 12- ашық қызыл, 13- алқызыл, 14- сары, 15- ақ, 128- жыпылықтау
Процедура: П: SetBkColor (c: word)
Қызметi: Экран төсегiнiн тусiн анықтайды
Процедура: П:ClearDevice
Қызметi: Көрсеткiшi (0, 0) нүктесiне қояды және экранды төсек түсiмен толтырады
Процедура: П: SetLineStyle (s, t: word)
Қызметi:

Сызықтын типiн және жуандығын анықтайды,

s: 0- түтас, 1- нүктелiк, 2- штрих-пункирлi, 3- пунктирлi, 4- орынд. типi

t: 0- қалыпты, 1- жуан

Процедура: П: SetStyle (f, n, r: word)
Қызметi:

Мәтiндi экранға шығару параметрлерiң анықтайды,

f- шрифт (0, 1, 2, 3, 4), n-бағыт(0, 1),

r- шрифт өлшемi (1, x4)

Процедура: П: SetFillStyle (s, c:word)
Қызметi:

Толтыру стилiн және оның түсiн анықтайды,

s: 0-төсек түсiмен толтыру,

1-берiлген туспен толтыру,

2: 3:

4: 5:

6: 7:

8: 9:

10: 11:

12-орындаушының стилімен толтыру

Процедура:

П: SetFillPattern

(s: FillPattern Type, c: word)

Қызметi:

Орындаушының толтыру стилін және оның тусін анықтаиды, стандарт тип:

FiillPattern Type = array [1. . 8] of byte

Процедура: П: SetActivePagePage (p: word)
Қызметi: Белсенді беттің нөмірін анықтайды
Процедура: П: SetVisualPage (p: word
Қызметi: Көрінетін беттің нөмірін анықтайды
Процедура:

П: SetViewPort (x1, y1, x2, y2:integer;

ClipOn:boollean)

Қызметi: Графикалық терезе кескіндейді
Процедура: П: SetPalette (cp, c: ShortInt
Қызметi: С түсінің ретін өзгертеді
Процедура: П: SetAllPalette (cp: word)
Қызметi:
Процедура: П:SetRGBPalette (c, r, g, b: ShortInt)
Қызметi: C түсінің қызыл, жасыл, көк құраушыларын өзгертеді(0<=r, g, b<=63)

1. 3. Графикалық элементтерді бейнелеу

процедуралар

Процедура
Қызметі
Процедура: П: PutPixel (x, y: integer; c: word)
Қызметі:

Координаталары (х, у) болатын нүктені с

Түспен экранға шығарады

Процедура: П: Line (x1, y1, x2, y2: integer)
Қызметі: Координаталары (х1, у2) болатын екі нүктені қосып кесінді сызады
Процедура: П: LineRel (dx, dy: integer)
Қызметі:

Көрсеткіш, векторына ығыстырып,

кесінді сызады

Процедура: П: LineTo (x, y: integer)
Қызметі: Көрсеткішті, нүктесіне ығыстырып, кесінді сызады
Процедура: П: Rec tangle (x1, y1, x2, y2: integer)
Қызметі: Қарама-қарсы төбелерінің координаталары (x1, y1) және (x2, y2) болатын тіктөртбұрыш сызады
Процедура:

П:DrawPole (n: word;

M:array[1. . n] of PointType)

Қызметі:

n- бұрышты көпбұрыш сызады.

M- жазбалар массиві:

PoitType = record

x, y: integer;

end.

Процедура: П: Circle (x, y: integer; r: word)
Қызметі: Центрі (x, y) нүктесінде және радиусі r болатын шеңбер сызады
Процедура: П: Arc (x, y: integer; a1, a2, r: word)
Қызметі: Центірі (х, у) нүктесінде, радиусі r болатын шеңбердін бастапқы және соңғы бұрыштары а1, және а2-ге (градус) тең доғасын сызады
Процедура:

П: Ellipse (x, y: integer;

a1, a2, xr, yr: word)

Қызметі:

Центрі (х, у) нүктесінде, координат

остері бағытындағы радиустері болатын эллипстің бастапқы және соңғы бұрыштары а1 және а2-ге (градус) тең доғасын сызады

Процедура: П: FloodFill (x, y: integer; c: word)
Қызметі:

Алдын-ала қойылған параметрлерге

сәйкес (х, у) нүктесі жатқан тұйық аймақты толтырады с- аймақ шекарасының түсі

Процедура: П: OutText(s: string)
Қызметі:

Көрсеткіш тұрған нүктеден бастап

мәтін жолын экранға шығарады

Процедура: П: SetTextJustify (x, y: word)
Қызметі:

Мәтінді автоматты түрде жатық (х) және

тік жол (у) дағыттарында қатарластырады.

Х: 0-сол жақтан, 1-ортадан,

2- оң жақтан;

у: 0-төменнен, 1- ортадан,

2-жоғарыдан;

Процедура:

П: OutTextXY (x, y: integer;

S: string)

Қызметі:

Координаталары (х, у) болатын

нүктеден бастап мәтін жолын экранға шығарады

Процедура: П: Bar (x1, y1, x2, y2: integer)
Қызметі: Қарама-қарсы бұрыштарының координаталары (х1, у1) және (х2, у2) болатын тіктөртбұрышты алдын-ала қояылған параметрлерге сәйкес толтырады
Процедура:

П: FillPoly (n: word;

M: array[1. . n] of PointType)

Қызметі:

n- бұрышты көпбұрышты толтырады.

M- жазбалар массиві:

PointType = record

x, y: integer;

End.

Процедура:

П: PieSlice (x, y: integer;

a1, a2, r: word)

Қызметі: Центрі (х, у) нүктесінде, радиусі болатын шеңбердің бастапқы және соңғы бұрыштары а1 және а2-ге (градус) тең секторын толтырады
Процедура:

П: FillEllipse (x, y: integer;

xr, yr: word)

Қызметі:

Центірі (х, у) нүктесінде, координат

остері бағытындағы радиустері

болатын эллипсті алдын-ала қойылатын параметрлерге сәйкес толтырады

Процедура:

П: Sector (x, y: integer;

a1, a2, xr, yr: word)

Қызметі:

Центрі (х, у) нүктесінде, радиустері

xr, yr болатын эллипстің бастапқы және

соңғы бұрыштары а1 және а2-ге (градус)

теңи болатын секторын толтырады

Процедура:

П: Bar3D (x1, y1, x2, y2, d: integer;

Top: bollean)

Қызметі:

Беткі жағы берілген тіктөртбұрыш

болатын және d қалыңдығы бойынша параллелипиед сызығы. top= true болса, онда оның жоғарғы жағы сызылады,

top= false болса сызылмайды

Процедура:

П:GetImage (x1, y1, x2, y2: integer;

A: pointer)

Қызметі:

Кескіннің көрсетілген тіктөртбұрышты

фрагментін жадыда сақтайды

Процедура:

PutImage (x, y: integer;

A: pointer; M: SortInt)

Қызметі:

Жадыда сақталған кескін фрагментін берілген режимге (0 4) сәйкес экранның

көрсетілген орнына шығарады

... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Turbo Pascal тілінде циклдармен жұмыс
Turbo Pascal программалау тілі
Turbo Pascal тілінің операторлары жайлы
Turbo Pascal тілінде программа дайындау жолдары
Турбо Паскаль ортасында жұмыс
Turbo Pascal программалау тілі туралы түсінік
Turbo Pascal бағдарламалау тілі
Turbo Pascal тілі туралы
Турбо Паскаль жүйесінде қосалқы программаларды ұйымдастыру технологиясы туралы
Турбо Паскаль бағдарламысының тарихы
Пәндер



Реферат Курстық жұмыс Диплом Материал Диссертация Практика Презентация Сабақ жоспары Мақал-мәтелдер 1‑10 бет 11‑20 бет 21‑30 бет 31‑60 бет 61+ бет Негізгі Бет саны Қосымша Іздеу Ештеңе табылмады :( Соңғы қаралған жұмыстар Қаралған жұмыстар табылмады Тапсырыс Антиплагиат Қаралған жұмыстар kz