С++ те бағдарламалау пәнінен дәрістер



бет79/79
Дата07.02.2022
өлшемі380,73 Kb.
#94133
түріПрограмма
1   ...   71   72   73   74   75   76   77   78   79
Байланысты:
Дәріс сабақтары С каз

Режим

Түстің саны

Рұқсат етілген

драйвер файлы


Константа аты

Константа мәні

CGA

1

CGAC0

4

320x200

CGA.BGI

CGAHi

2

640x200

EGA

3

EGALo

16

640x200

EGAVGA.BGI

EGAHi

16

640x350

VGA

9

VGALo

16

640x200

EGAVGA.BGI

VGAHi

16

640x350

Графикалық режимде монитор экранымен жұмыс істеуге арналған функцияларды қолдану үшін graphics.h тақырыптық файлын қосу керек.




2. Инициализация және графикалық режимнен шығу
Мүмкін графикалық режимдердің біреуін орнататын функция.
initgraph(&d,&m,p);

мұндағы d –драйверді береді, m –режимді береді, p – драйвер файлына жолды береді, яғни BGI кеңейтіліміндегі сәйкес файлға (Ескерту: Егер драйвер файлы ағымдағы каталогта болса, онда жол ретінде келесіні береді "").




Мысал:

initgraph(9,VGALo,"c:\");


Бұл функция 16 әр түрлі түстерді көрсету мүмкіндігімен 640х200 пикселді рұқсатымен режимді орнатады.




Ескерту: Сонымен қатар, Detect стандартты константасы бар. Оны драйвер түрінде көрсеткенде автоматты түрде қажетті драйверді және мониторға сәйкес келетін режимді орнатады.


Мысал:
Графикалық режимді инициализациялау

int d,m;

d=DETECT;
initgraph(&d,&m,"");
Графикалық режимнен шығу үшін closegraph функциясы қолданылады;


3. Координат жүйесі
Бейнені экранда бейнелеу үшін координат жүйесі қолданылады.

Графикалық режимде көрініп тұратын курсор жоқ, бірақ көрінбейтін ағымдағы нұсқағыш бар. Ағымдағы нұсқағыштың орынын ауыстыру үшін келесі функцияларды қолдануға болады:




moveto(x,y); - ағымдағы нұсқағышты (x,y)координатындағы нүктеге әкеледі
moverel(x,y); - ағымдағы нұсқағышты горизонтал бойынша х нүктеге, вертикал бойынша у нүктеге әкеледі.
Орнатылған режимге рұқсаты бар вертикал және горизонтал бойынша нүктелердің максималды санын анықтау үшін келесі функцияларды қолдануға болады:


getmaxx() – Орнатылған режим үшін х-тің максималды мүмкін мәнін анықтайды.
getmaxy() - Орнатылған режим үшін у-тің максималды мүмкін мәнін анықтайды.


4. Негізгі фигураларды құру
1. putpixel(x,y,c);
(x,y) координаттарымен нүкте салу, c түсті білдіреді.

2. Сызық салу


line(x1,y1,x2,y2);
(x1,y1)нүктесінен (x2,y2) нүктесіне дейін сызық сызады.


lineto(x,y);
ағымдағы көрсеткіштен (x,y)нүктесіне дейін сызық сызады.

Сызықтың түсі келесі функциямен беріледі


setcolor(c);

Сызықтың стилі келесі функциямен беріледі


setlinestyle(l,p,t);


l тұрған жерге сызықтың стилін береді;


Сызық стилдерінің кестесі

Константа аты

Константа мәні

Жазылуы

SolidLn

0




DottedLn

1




CrnterLn

2




DashedLn

3




UserBitLn

4

Қолданушы типі




t сызықтың қалыңдығын көрсетеді;


сызықтың қалыңдығының кестесі

Константа аты

Константа мәні

Жазылуы

NormWidth

1

орташа(1 пиксель)

ThickWidth

3

қалың (3 пикселя)



P үлгіні береді

Егер қолданушы стандартты стиль қолданылса, онда р-ның мәні 0-ге тең.


Егер қолданушы өз стильін қолданса, онда р-ның мәні 4-ке тең.

3. Төртбұрыш салу




rectangle(x1,y1,x2,y2);
Боялмаған тіктөртбұрыш салу, мұндағы

Төртбұрыштың сызығын бояу үшін setcolor функциясын қолданамыз, ал қалыңдығы мен стилін өзгерту үшін setlinestyle функциясын қолданамыз.




bar(x1,y1,x2,y2);
Боялған тіктөртбұрыш салу
Бояғанда келесі функциямен өрнектелетін шаблон және түс қолданылады:
setfillstyle(n,c);

мұндағы, n- толтыру стилі, c – түсі.


толтыру стилі кестесі



Константа аты

Константа мәні

жазылуы

EmptyFill

0

Фон түсімен боялады

SolidFill

1

Ағымдағы түспен боялады

LineFill

2




LtslashFill

3




SlashFill

4




BkslashFill

5




LtbkslashFill

6




HatchFill

7




XhatchFill

8




InterLeaveFill

9




WideDotFill

10




CloseDotFill

11




UserFill

12

Қолданушының анықтауы бойынша толтырылады

4. Параллелепипед салу




bar3d(x1,y1,x2,y2,d,t);

мұндағы,
d үш өлшемді контурдың тереңдігін береді, t тік төртбұрышты параллелепипедке төбені қосу(t=1) керек пе, жоқ (t=0) па соны анықтайды.




Сызықтың түсі setcolor функциясымен анықталады. Сызықтың стилі setlinestyle функциясымен анықталады. Бояудың стилі мен түсі setfillstyle функциясымен анықталады.


5. Дөңгелек,дога,, эллипс салу




circle(x,y,r);
радиусы r, центрі (x,y) нүктесінде орналасқан дөңгелек салу.
түс setcolor функциясымен беріледі.


arc(x,y,b,e,r);
b бастапқы бұрыштан e соңғы бұрышына дейін,
радиусы r, центрі (x,y) нүктесінде орналасқан
дога салу.
Ескерту: Егер b=0, e=360 болса, онда дөңгелек сызылады.
ellipse(x,y,b,e,xr,yr);
b бастапқы бұрыштан e соңғы бұрышына дейін(x,y) нүктесінде центрі орналасқан эллипс салу, xr – X бойынша радиус, yr –Y бойынша радиус.

6. Бояу түсі және фон түсі




setbkcolor(c);
Графикалық режимде фонның түсін анықтайды.


cleardevice();
Графикалық режимде экранды тазалау функциясы.


floodfill(x,y,c);
setfillstyle функциясымен анықталатын ағымдағы түспен және толтыру стилімен белгіленген аймақты бояйды.
(x, y) – белгіленген аймақтың ішінде орналасқан нүкте, c – белгіленген аймақтың шекарасының түсі.


7. Графикалық режимде мәтін шығару


outtext(s);
Нұсқағыштың ағымдағы орынынан бастап мәтіннің жолын шығарады.
s – жолдық типтің айнымалысы немесе тұрақтысы.


outtextxy(x,y,s);

(x, y) – мәтіннің басы орналасатын нүкте.


Ескерту: Экранға сандық берілгендерді шығару үшін алдымен санды жолға айландыру қажет.


Өзін-өзі тексеруге арналған сұрақтар

  1. Экранмен жұмыс істеуге арналған қандай графикалық режимдер бар?

  2. Графикалық обьектілерді сызуға арналған қандай функциялар бар?





Достарыңызбен бөлісу:
1   ...   71   72   73   74   75   76   77   78   79




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет