++да график режимида ишлаш учун махсус



Download 0,94 Mb.
bet4/7
Sana23.03.2022
Hajmi0,94 Mb.
#506864
1   2   3   4   5   6   7
Bog'liq
sarvar mustaqil ish (Автосохраненный)

lineto (x, y) - жорий нуктадан x ва y координатали нуктагача кесма чизиш;
/* linerel example */
#include
#include
#include
#include
int main(void)
{ int gdriver = DETECT, gmode;
char m[80];
initgraph(&gdriver, &gmode, "");
linerel(300, 100);
getch();
closegraph();
return 0;}

lineto (x, y) - жорий нуктадан x ва y координатали нуктагача кесма чизиш;
/* lineto example */
#include
#include
#include
#include
int main(void)
{ int gdriver = DETECT, gmode;
char m[80];
initgraph(&gdriver, &gmode, "");
moveto(20, 30);
srintf(m, " (%d, %d)", getx(), gety());
outtextxy(20,30, m);
lineto(100, 400);
sprintf(m, " (%d, %d)", getx(), gety());
outtext(m);getch();
closegraph();
return 0;
}

Спрайтларни “тирилтиришни” кўплаб усуллари мавжуд бўлиб, уларнинг барчасини икки гуруҳга бўлиш мумкин: комбинацион ва морфологик. Комбинацион усуллар асосида қуйидаги алгоритмни турли модификацияси ётади.

  1. Экранда спрайтни вариантини чиқариш;

  2. Спрайтни ўчириш;

Қандайдир силжиш орқали бошқа бир (ўзгартириш) спрайтни чиқариш
/* moverel example */
#include
#include
#include
#include
int main(void)
{ int gdriver = DETECT, gmode;
char msg[80];
initgraph(&gdriver, &gmode, "");
moveto(20,30);
putpixel(getx(), gety(), getmaxcolor());
sprintf(msg, " (%d, %d)", getx(), gety());
outtextxy(20,30, msg);
moverel(400, 300);
putpixel(getx(), gety(), getmaxcolor());
sprintf(msg, " (%d, %d)", getx(), gety());
outtext(msg); getch(); closegraph(); return 0;
}
. setlinestyle (s, a, b) – турли стилдаги чизикларни чизиш учун; Бу ерда s- style номери; a –фойдаланувчи стилини яратиши мумкин булган параметр, одатда а=1 деб олинади; b- чизикнинг калинлигини курсатадиган параметр /* setlinestyle example */
0 – оддий чизик;
1 – майда пунктир чизик;
2 – калин ва узунчок пунктир чизик
3 – юпка ва узунчок пунктир чизик;
4 – сийрак нуктали чизик.
#include
#include
#include
#include
#include
char *lname[] = { "SOLID_LINE", "DOTTED_LINE", "CENTER_LINE", "DASHED_LINE", "USERBIT_LINE" };
int main(void)
{ int gdriver = DETECT, gmode; int style, midx, midy, userpat,x=10,y=10,x1=150,y1=60;
char stylestr[40]; initgraph(&gdriver, &gmode, ""); userpat = 1;
for (style=SOLID_LINE; style<=USERBIT_LINE; style++){ setlinestyle(style, userpat, 1)
strcpy(stylestr, lname[style]);
line(x+3, y+2, x1-10,y1-30);
rectangle(x,y, x1, y1);
outtextxy(x+2, y+20, stylestr);
getch(); x=x+160;x1+=160;
if(x1>=getmaxx()){y+=70;y1+=70;x=10;x1=150;}
closegraph(); return 0;}

График режими холатида турли шрифтлардан фойдаланиб матнларни хам
ѐзса булади. Шрифтлар .chr кенгайтмали файлларда сакланади. Улар .bgi
файллари билан битта каталогда сакланиши шарт.
/* textwidth example */
#include
#include
#include
#include
int main(void)
{ int gdriver = DETECT, gmode;
int x = 10, y = 0;
int i;
char m[80];
initgraph(&gdriver, &gmode, "");
y = 12;
for (i = 1; i<6; i++) {
settextstyle(TRIPLEX_FONT, HORIZ_DIR, i);
sprintf(m, "o'lcham: %d", i);
outtextxy(x, y, m);
x+=textwidth(m);
if((x+150)>getmaxx()){ x=0;y+=20;}
} getch(); closegraph();return 0;}

1. outtextxy (x, y, 'matn'); - матнни ѐзиш; бу ерда x ва y матн бошланадиган нукта координаталари; масалан: outtextxy (10, 10, 'Mirzaev K. 212-07 Aty‟);


2. settextstyle (sh, n, r); мант шрифтини урнатиш; бу ерда sh - шрифт номери (0 - векторли шрифт, 1 - стандарт шрифт); n - шрифт йуналиши (0 - чапдан унгга, 1 - куйидан юкорига ѐзиш); r - шрифт размери (оддий шрифтда 1, векторли шрифтда 4 деб олинади);
3. settextjustify (h, v) - ѐзилган каторни текислайди. У outtextxy процедурасидан кейин ѐзилади. Бу ерда h - горизонтал текислаш; v - вертикал текислаш; Горизонтал текислаш учун: 0 - чапга; 1- марказга; 2 - унгга. Вертикал текислаш учун: 0 - пастга; 1 - марказга; 2 - юкорига
/* textheight example */
#include
#include
#include
#include
int main(void) {
/* request autodetection */
int gdriver = DETECT, gmode;
int y = 0; int i; char m[80];
initgraph(&gdriver, &gmode, "");
for (i=1; i<11; i++) {
settextstyle(TRIPLEX_FONT, HORIZ_DIR, i);
sprintf(m, "o’lcham: %d", i); outtextxy(1, y, m); y += textheight(m); } getch(); closegraph(); return 0; }

setusercharsize - вектор шрифтлари учун бир хил символларнинг эни ва
буйини урнатади. Масалан: setUserCharSize(x1, y1, x2, y2);
#include
#include
#include
#include
int main(void)
{ int gdriver = DETECT, gmode, errorcode;
int midx, midy;
initgraph(&gdriver, &gmode, "");
midx = getmaxx() / 2;
midy = getmaxy() / 2;
setfillstyle(9, 14);
pieslice(midx, midy, 30,350,100);getch(); closegraph();return 0;}

imagesize (x1, y1, x2, y2) – экраннинг чап юкори нуктаси ва унг пастки нуктаси координаталаридан тугритуртбурчакли сохани саклаш учун керак буладиган хотиранинг улчами (байтларда олинади); getimage (x1, y1, x2, y2, p) – динамик хотиранинг берилган р майдонида тугритуртбурчакли тасвирни саклаш. Бу ерда р – тасвир сакланадиган жойнинг адресини саклайдиган узгарувчи, яъни курсаткич. putimage (x, y, p, m) – экраннинг берилган жойига тасвирни чикариш; бу ерда x ва y – хотиранинг p майдонидаги тасвирдан нусха кучириладиган экран майдонининг чап юкори нуктаси; m – тасвирни экранга чикариш режими. Агар: 28 m = 0 (NormalPut) - тасвирни кучириш. Бунда эскичи учиб, янгиси пайдо булади (худди юриб кетаѐтгандек)
m = 1 (XorPut)
m = 2 (Orput) – m = 3 (AndPut)
/* getmaxwidth and getmaxheight example */
#include
int main(void)
{ /* Make a window, as big as possible */
initwindow(getmaxwidth( ), getmaxheight( ));
/* clean up */
getch(); closegraph(); return 0;}

Matn rejimidan grafik rejimiga o’tish uchun maxsus proseduradan foydalaniladi:

Download 0,94 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish