Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Жұмысты орындауға әдістемелік нұсқаулар






Компьютерлерде негізгі екі экран режимінің жұ мысы - символдық жә не графикалық экран режимдері пайдаланылады. Графикалық экранда нү кте координатасы екі бү тін санмен анық талынады. Яғ ни X осінің координатасы экранның сол жақ жоғ арғ ы бұ рышынан басталып, оң ғ а қ арай ал, У осінің координатасы экраннын сол жак жоғ арғ ы бұ рышынан басталып тө мен қ арай ө сіп отырады.

Тү сті тағ айындау ү шін ТЕХТСОLОR, ТЕХТВАСKGRОUND процедуралары пайдаланылады.
0-қ ара 4-қ ызыл 8-қ ою сү р 12-алқ ызыл

1-кө к 5-танкурай тү с 9-кө гілдір 13-ашық таң қ урай тү с

2-қ ою жасыл 6- қ оң ыр 10-жасыл 14-сары

3-аспан кө к 7 - ашық сү р 11-ашыккө к 15-ақ

Экранды графикалық режимге ауыстыру ү шін ІnіtGrарh операторы қ олданылады. Бұ л оператордың орындалуы нә тижесінде экран тазарып, тү рлі-тү сті режимге ауысады. Турбо Паскальдың версияларында бұ л операторлардың орындалуы ө згеше болып келеді. Графикалық режимді автоматты тү рде тағ айындау ү шін Grарhdrіvеr айнымалысы Dеtесt мә нін қ абылдауы керек.

Турбо-Паскаль қ ұ рамына графикалық процедуралардан тұ ратын арнайы графикалық модуль graph бар. Оның кейбір негізгі процедуралары:

Putpixel(x, y, c) – х, у координатамен берілген нү ктені с тү сімен салады.

Line(x1, y1, x2, y2) – х1, у1 координатамен берілген нү ктеден х2, у2 нү ктеге дейін сызық ты салады.

Rectangle(x1, y1, x2, y2) – х1, у1 – х2, у2 диагоналі бар тіктө ртбұ рышты салады.

Bar(x1, y1, x2, y2) – setfillstyle процедурамен белгіленген ү лгіге сә йкес боялғ ан тіктө ртбұ рышты салады.

Bar3d(x1, y1, x2, y2, l, top[on/off]) – тіктө ртбұ рышты брусокты салады, х1, у1 – х2, у2 диагональді алдынғ ы жағ ы жә не l параметрі оның терең ділігін анық тайды. top[on/off] параметрі брусоктің ү стінде жабылуы бар екенің анық тайды.

Arc(x, y, gr1, gr2, r) – градуспен берілген gr1, gr2 бұ рыштарының аралығ ында орталық нү ктесі х, у, радиусы r –ғ а тең дө ң гелек доғ асын сызу.

Pieslice(x, y, gr1, gr2, r) – градуспен берілген gr1, gr2 бұ рыштарының аралығ ында орталық нү ктесі х, у, радиусы r болатын дө нгелек секторын сызу.

Circle(x, y, r) – орталық нү ктесі х, у, радиусы r болатын шең бер салады.

Ellipse(x, y, gr1, gr2, Rx, Ry) – градуспен берілген gr1, gr2 бұ рыштардың аралығ ында орталық нү ктесі х, у, биіктігі мен ені Rx, Ry болатын эллипс сызу.

Setlinestyle(stil, pattern, tolsch) – сызық тың типін жә не оның қ алың дылығ ын анық тайды.

Setfillstyle(obr, c) – Bar, Bar3d, Floodfill процедуралар ү шін толтыру ү лгісін орнатады. Obr параметрдің мә ні 0-ге тең болғ анда – фон тү сін орнатады, 1- болғ анда с параметрмен кө рсетілген тү спен толық толтыру.

Setcolor(c) – суретсалу тү сін орнатады.

Setbkcolor(c) – фон тү сін орнатады.

Floodfill(x, y, c) – Setfillstyle процедурамен кө рсетілген ү лгімен сә йкес с тү сті сызық тармен шектелген тұ йық аймақ тарды толтырады. Х, у координаталары толтырылатын аймақ тың ішінде жату керек.

OuttextXY(x, y, текст) – х, у нү ктесінен бастап дә йекшелер ішінде жазылғ ан тексті экранғ а шығ ару.

GetmaxX, GetmaxY – экранның кө лденең і мен биіктігі бойынша сә йкес нү ктелер саның қ айтарып беретін функциялар.

 

Ә дістемелік мысалдар:

Мысал 1: Ү йдің суретін салуғ а арналғ ан программасы:

Program dom;

Uses graphABC, crt;

Begin

Rectangle(100, 100, 160, 200);

Rectangle(110, 110, 120, 130);

Rectangle(130, 130, 150, 200);

Floodfill(111, 111, 7);

Line(100, 100, 130, 50); line(130, 50, 160, 100);

Rectangle(140, 170, 145, 40);

Circle(145, 35, 5); circle(160, 30, 10); circle(190, 20, 20);

While not keypressed do

End.

 

Мысал 2. у = ax2 + bx + c функцияның графигін салу. Графикті нү ктелердің жиынтығ ы ретінде саламыз.

Program graphic;

Uses crt, graphABC;

Var a, b, c, y: real; gd, gm, k, s, x: integer;

Begin

Write(‘Қ ай интервалда графикті саламыз? ’);

Readln(k, s);

Write(‘Тең деудің коэффициенттерін енгізің із ’);

Readln(a, b, c);

Gd: = detect; initgraph(gd, gm, ’’);

Setcolor(5);

Line(320, 0, 320, 480); line(0, 240, 640, 240);

For x: =k to s do

Begin

Y: =a*sqr(x)+b*x+c;

Putpixel(320+x, 240-round(y), 4);

End;

Repeat until keypressed;

End.

 

2-Тапсырма. Экранда кішкентай шең бердің қ озғ алун қ ұ ру. Экран бойынша объектің қ озғ алуын ә ртү рлі тә сілдерме имитациялауғ а болады. Ең қ арапайым тә сіл – объекті салуб одан кейін графикалық экранды тазарту жә не қ айтадан оны ө згертілген координаттарымен салу. Қ олданудың ең тиімді тә сілі – объекті экранның фон тү сіне бояу.

Екінші тә сілді қ олданудың мысалын немесе қ озғ алудың модельдеу ә дісін қ арастырайық:

Program dvigenie;

Uses crt, graphABC;

Var x, gd, gm: integer; y: real;

Begin

Gd: = detect; initgraph(gd, gm, ’’);

For x: =0 to 640 do

Begin

Setcolor(7);

Y: =x/2; circle(x, round(y), 5);

Delay(1000);

Setcolor(0);

Circle(x, round(y), 5);

End;

Repeat until keypressed;

End.

 

3-Тапсырма. Экранда оң жақ тан сол жақ қ а қ арай жылжымалы жол тү рінде мә тін ақ паратты шығ ару программасын қ ұ ру.

program gol;

uses crt, graph;

var gd, gm, x, h: integer; s: string;

begin

gd: =0; gm: =0; initgraph(gd, gm, ’’);

s: =’Проба test for type’; settextstyle(0, 0, 2);

x: =10; h: =10;

while x< 500 do

begin

outtextxy(x, 100, s); delay(5000);

cleardevice;

x: =x+h;

end;

end.

 

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.