"ABC Pascalda grafika" mavzusidagi taqdimot. "ABC Pascalda grafika" mavzusidagi taqdimot Pascal abc dasturlash muhitining grafik imkoniyatlari taqdimoti


Serogodskaya N.I. GBOU 118-sonli maktab Janubi-G'arbiy ma'muriy okrugi

Grafik rejimi

Informatika o'qituvchisi GBOU 118-sonli Janubiy-G'arbiy ma'muriy okrugi

Serogodskaya N.I.

Moskva


№1 dars


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Maqsadlar

Tarbiyaviy:

talabalarni Pascal ABC dasturiy muhiti va Paskal tilida dastur tuzilishi bilan tanishtirish;

o'rganilayotgan materialni qo'llash bo'yicha talabalarda birlamchi bilimlarni shakllantirish.

Tarbiyaviy:

tahlil qilish, umumlashtirish va tizimlashtirishga o‘rgatish;

o‘quvchilarning so‘z boyligini boyitish.

Tarbiyaviy:

talabalarning axborot madaniyatini, mustaqil va jamoaviy faoliyat va fikr yuritish qobiliyatini rivojlantirish.


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

  • Talabalar bilishi kerak:
  • GraphPascal ABC muhitidagi asosiy buyruqlar va funksiyalar;
  • dasturni loyihalash va ishlatish qoidalari;
  • Talabalar quyidagilarni bilishlari kerak:
  • grafik primitivlarni chizish dasturlarini ishlab chiqish;
  • dastur bilan kerakli amallarni bajarish;
  • obyektlarni chizish uchun parametrli va parametrsiz protseduralarni ishlab chiqish;
  • standart algoritm loyihalari asosida dasturlarni ishlab chiqish;
  • Qo'shimcha ravishda: yanada murakkab grafik muammolarni hal qilish

Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Grafik rejimda ishlash uchun modulni ulashingiz kerak GraphABC :

PassalABC grafik ekrani o'z ichiga oladi 640 tomonidan ball gorizontal va 400 ball vertikal.

E'tibor bering, matematikadagi koordinata o'qlaridan farqli o'laroq, boshlang'ich ekranning yuqori chap burchagidir.


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

EKRANNI NAZORAT

SetWindowWidth(w) - grafik oynasining kengligini o'rnatadi;

SetWindowHeight(h) - grafik oynaning balandligini o'rnatadi;


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

ClearWindow; - grafik oynasini oq rang bilan tozalaydi.

ClearWindow (cl rang nomi ); - grafik oynani belgilangan rang bilan tozalaydi.

ClearWindow (clMoneyGreen);

Yashil pul rangi


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Grafik primitivlar

  • Nuqta
  • Chiziq
  • To'rtburchak
  • Doira
  • Ellips
  • Sektor

Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

SetPixel(x,y,cl rang nomi ) - koordinatali (x,y,) bir pikselni rang bilan bo'yaydi

SetPixel (300,200, clred);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

LineTo(x,y) - qalamning joriy holatidan (x,y) nuqtaga segment chizadi; Qalam koordinatalari ham (x,y) ga teng bo'ladi.

LineTo boshlang (300,200);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Chiziqlar

Chiziq(x1,y1,x2,y2) - boshi (x1,y1) nuqtada va oxiri (x2,y2) nuqtada bo'lgan segmentni chizadi.

qator (100,50,500,250);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Ishlatilgan ranglar

clBlack - qora clBinafsha - binafsha clWhite - oq clMaroon - To'q qizil clRed - qizil clNavy - To'q ko'k rang clGreen - yashil clBrown - jigarrang clBlue - ko'k clSkyBlue - ko'k clSariq - sariq clCream - krem

clAqua - firuza clOlive - zaytun clFuchsia - lilak clTeal - ko'k-yashil clGray - to'q kulrang clLime - yorqin yashil clMoneyGreen - yashil pulning rangi clLtGray - och kulrang clDkGray - to'q kulrang clMedGray - kulrang clSilver - kumush

Random(16777215) – butun Paskal rang palitrasidan tasodifiy rang


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Chiziq rangi

SetPenColor(rang) - parametr bilan belgilangan qalam rangini o'rnatadi rang .

setpencolor(clred);

qator (30,30,400,350);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Nuqta chiziq

SetPenStyle(); -

raqam bilan belgilangan qalam uslubini o'rnatadi.

setpencolor(clred);

SetPenStyle(1); (1 - uzoq zarba)

Qator (10,100,350,100);

SetPenStyle(2); (2 - qisqa zarba)

Qator (10,125,350,125);

SetPenStyle(3); (3 - tire nuqtali chiziq)

Qator (10,150,350,150);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Chiziq qalinligi

SetPenWidth(n) - qalamning kengligini (qalinligini) n pikselga o'rnatadi.

setpenwidth(20);

setpencolor(clred);

qator (30,30,400,350);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Uchburchak

Jarayonlar bo'yicha chizilgan

Chiziq(x1,y1,x2,y2); LineTo(x,y);

Treugolnik dasturi;

setpenwidth(20);

setpencolor(clPurple);

qator (300,100,500,300);

lineto (100,300);

lineto(300,100);

toshqin (300,200, clSkyBlue) ;


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

To'rtburchak

To'rtburchak (x1,y1,x2,y2) - qarama-qarshi uchlari (x1,y1) va (x2,y2) koordinatalari bilan belgilangan to‘rtburchak chizadi.).

pryamougolnik dasturi;

To'rtburchak (50,50,200,200);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Rangni to'ldirish

FloodFill(x,y,rang) - (x, y) nuqtadan boshlab bitta rang maydonini rang bilan to'ldiradi.

pryamougolnik dasturi;

To'rtburchak (50,50,200,200);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Cho'tka bilan to'ldirish

SetBrushColor(rang) - cho'tka rangini o'rnatadi.

Cho'tkasi to'ldirishgacha cho'ziladi yopiq halqa, tavsifi cho'tka rangini o'rnatish tartibiga amal qiladi.

Dastur to'ldirish_ro'yxati;

SetBrushColor( clMoneyGreen);

To'rtburchak (50,50,300,300);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Cho'tka bilan to'ldirish

SetBrushStyle(0 dan 7 gacha raqam yoki nom) - raqam yoki ramziy konstanta bilan belgilangan cho'tka uslubini o'rnatadi.

p12_zalivka dasturi;

GraphABC dan foydalanadi;

SetBrushColor(clAqua);

SetBrushStyle(1);

Rectangle(10,10,100,100);

SetBrushColor(clRed);

SetBrushStyle(2);

To'rtburchak (110,10,200,100);

SetBrushColor (clBlue);

SetBrushStyle(3);

To'rtburchak (210,10,300,100);

SetBrushColor (clGreen);

SetBrushStyle(4);

To'rtburchak (10,110,100,210);

SetBrushColor (clYellow);

SetBrushStyle(5);

To'rtburchak (110,110,200,210);

SetBrushColor (clBlack);

SetBrushStyle(6);

To'rtburchak (210,110,300,210);

Standart uslub 0 – bir tekis rang bilan toʻldirish.


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Cho'tka bilan to'ldirish

SetBrushPicture('fname') -

fname faylida saqlangan naqshni cho'tka bilan soya qilish uchun naqsh sifatida o'rnatadi, bu holda, bo'yashda joriy cho'tka rangi e'tiborga olinmaydi.

SetBrushPicture("brush4.bmp"); Ellips (0,0,640,400);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Kontur rangi va qalinligi

tartiblar bilan beriladi SetPenWidth(w); SetPenColor(rangli);

pryamougolnik dasturi;

SetPenColor (clred);

SetPenWidth(20);

To'rtburchak (50,50,200,200);

FloodFill(100,100, clSkyBlue);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Doira

Doira(x,y,r) - markazi (x,y) nuqtada va radiusi r bo‘lgan aylana chizadi .

Doira (500,200,100);

FloodFill(500,200, clGreen);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Ellips

Ellips(x1,y1,x2,y2) - qarama-qarshi uchlari (x1,y1) va (x2,y2) koordinatalari bilan chegaralangan to'rtburchak bilan aniqlangan ellipsni chizadi.

Ellips (50,50,200,350);

FloodFill(50+100,50+100,clred);

Ellips (250,150,550,300);

FloodFill(250+100,150+100,clBlue);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Doira yoyi

Yoy(x,y,r,a1,a2)- markazi (x,y) nuqtada va radiusi r bo‘lgan, OX o‘qi bilan a1 va a2 burchak hosil qiluvchi ikkita nurlar orasiga o‘ralgan aylana yoyni chizadi. (a1 va a2 haqiqiy, darajalarda ko'rsatilgan va soat miliga teskari hisoblangan).

SetPenWidth(10);

Arc(300,250,150,45,135);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Sektor

Pirog(x,y,r,a1,a2) - aylananing yoy bilan chegaralangan sektorini chizadi (protsedura parametrlari Arc protsedurasidagi kabi ma'noga ega).

Pirog (300,200,100,0,90);

FloodFill(300+10,200-10,clAqua);


Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

Adabiyotlar ro'yxati

  • Fedorenko Yu. Turbo Paskalda algoritmlar va dasturlar .
  • Faronov V.V. Turbo Paskal 7.0. Boshlang'ich kurs. - Bilim, 1998. -620 b.
  • Grizlov V.I., Grizlova T.P. Turbo Paskal 7.0. - M.: "DMK", 2000. - 416 b.
  • Zuev E.A. Turbo Pascal 6.0 dasturlash tili. - M.: Unitech, 1992. - 298 pp., kasal.
  • Zuev E.A. Turbo Paskal. Amaliy dasturlash .

Serogodskaya N.I. GBOU 1-son umumiy o’rta ta’lim maktabi 2-bino

E'tiboringiz uchun rahmat!

Dasturlash muhitida grafika

Turbo Paskal

EADC o'qituvchisi: Neverova I.Yu.


Dars rejasi:

  • Turbo Paskal dasturlash muhitida grafik rejimni ulash xususiyatlari
  • Dastur strukturasini tuzish
  • Protseduralar uchun koordinatalarni hisoblash
  • Kontur va rangni to'ldirish bilan chizishning xususiyatlari
  • Namuna dasturlarni ko'rib chiqish

I.G. Semakin, A.P. Shestakov. Dasturlash asoslari, 88-98, 398-409-betlar.


Turbo Paskal tilining grafik imkoniyatlari - Grafik kutubxonasi

  • Grafik kutubxonani ulash dasturda quyidagi protsedura yordamida ko'rsatilgan:
  • Grafik ekran rejimini o'rnatish uchun quyidagi protseduradan foydalaning:

InitGraph(Var drayveri, Tartib: Butun son, Yo'l: String);

Grafik kutubxonaga yo'l

Haydovchi ish rejimi

Haydovchi kodi


Grafik dasturlarning ishlash rejimlari

  • Matn rejimi. Dastur yozish uchun foydalaniladi. Dastur matni rejimidan grafik dasturni bajarish rejimiga o'tish RUN protsedurasi yoki Ctrl+F9 tugmalari yordamida amalga oshiriladi.
  • Grafik rejim. Tasvir alohida nuqtalardan (piksellardan) tuzilgan. VGAHi grafik drayverining ishlash rejimi 640x480 pikselli grafik panjaraga mos keladi, palitrasi 16 rang, drayver turini avtomatik aniqlash va grafik rejimini o'rnatish. Enter tugmasini bosib dasturdan matn rejimiga o'ting.

Dastur tuzilishi

ricunok dasturi; (dastur nomi)

Grafikdan foydalanadi; (grafik kutubxonani ulash)

Var Dr, Md: butun son; (haydovchi o'zgaruvchilari tavsifi)

Boshlash (dasturning asosiy qismi)

Dr:= Aniqlash; (haydovchi turi)

InitGraph (Dr, Md, ‘C:\TP 70\BGI’); ( bilan grafiklarni yoqish

grafik kutubxonasi)

ReadLn; (dastur kechikishi)

Oxiri. (dastur oxiri)


Geometrik figuralarni chiqarish protseduralari uchun koordinatalarni hisoblash

Bar(50,100,150,150)

Fillelipse(250,125,25,25)

VGA tipidagi monitor


Grafik protseduralardan foydalanish

Markazda qizil doira bilan oq Yaponiya bayrog'ini ko'rsatadigan dastur

turkuaz ekran fonida.

Var Dr, Md: Integer;

InitGraph(Dr, Md, 'C:\TP70\BGI');

ClearViewPort; (Ekranni tozalash, ekran fonini sozlash)

SetBkColor(Moviy); (Ekran fon rangini turkuaz rangga o'rnating)

SetFillStyle(1, 15); (Naqsh va rangga ko'ra to'rtburchaklar to'ldirish rangi)

Bar(10, 10, 410, 210); (Koordinatalar bo'yicha to'ldirilgan to'rtburchak chizish)

SetColor(4); (Doira chiziqlari rangini o'rnatish)

Doira (210, 110, 30); (Markaz koordinatasi va radiusi bo'lgan doira chizish)

SetFillStyle(1, 4); (Naqsh va rangga ko'ra doirani to'ldirish rangi)

FloodFill(200, 100, 4); (Yopiq shaklni koordinata bo'ylab chegaralargacha rang bilan to'ldirish)

ReadLn; (dastur kechikishi)

CloseGraph; (grafik rejimdan chiqish)

Oxiri. (dasturning oxiri)


Blok diagrammani ko'rsatadigan dastur

var dr,md:integer;

start dr:=detect;

setlinestyle(0,1,3);

ellips(320,40,0,360,50,10);

qator (320,50,320,70);

qator (270,70,390,70); qator (390,70,370,100); qator (370,100,250,100); qator (250,100,270,70); qator (320,100,320,120);

to'rtburchak (260,120,380,150);

qator (320,150,320,170); qator (320,170,400,190); qator (400,190,320,210); qator (320,210,240,190); qator (240,190,320,170);

qator (240,190,200,190); qator (200,190,200,210);

to'rtburchak (140,210,260,240);

qator (200,240,200,260);

to'rtburchak (140,260,260,290);

qator (200,290,200,310);

Qator (140,310,260,310); Qator (260,310,240,340); Qator (240,340,120,340); Qator (120,340,140,310); qator (200,340,200,360);

qator (200,360,100,360); qator (100,360,100,170); qator (100,170,320,170); qator (400,190,440,190);

qator (440,190,440,380); qator (440,380,320,380); qator (320,380,320,400);

ellips (320,410,0,360,50,10);

settextstyle(7,0,2);

outtextXY(300,75,’F"); outtextXY(300,125,"N:=0"); outtextXY(292,178,'N"


Dasturning bajarilishi natijasi


Quyidagi rasmni aks ettiruvchi dastur yozing

Paravoz dasturi;

var dr,md:integer;

start dr:=detect;

initgraph(dr,md,"C:\tp70\bgi");

SetFillStyle(1, 2);

Bar(150,30,250,225);

SetFillStyle(1, 1);

Bar(180,55,220,115);

SetFillStyle(1, 2);

Bar(250,120,450,225);

Qator (350,65,390,65);

Qator (350,65,360,120);

Qator (390,65,380,120);

Qator (380,120,360,120);

SetFillStyle(1,1);

Sektor(420,245,0,360,20,20);

Sektor(300,245,0,360,20,20);

Sektor (185,245,0,360,20,20);

SetFillStyle(1,7);

Sektor(400,50,0,360,30,10);

Sektor(425,25,0,360,20,10);

Sektor(445,5,0,360,10,5);


Uy vazifasi

Ish daftarlarida 4-mavzu, grafik protseduralardan foydalanish bo'yicha 1 va 2-topshiriqlarni bajaring.

4-ilovadagi asosiy grafik protseduralar jadvali.

Oyna boshqaruvi
SetWindowSize(w,h);
grafik oynasining o'lchamlarini o'rnatadi
SetWindowWidth(w);
grafik oynasining kengligini o'rnatadi
SetWindowHeight(h);
grafik oynasining balandligini o'rnatadi
SetWindowTitle('Sarlavha');
oyna sarlavhasini o'zgartiradi

Grafikni tozalash
oyna
ClearWindow;
grafik oynasini oq rang bilan tozalaydi
ClearWindow (rangli);
Belgilangan rang bilan grafik oynani tozalaydi.
GraphABC dan foydalanadi;
boshlanishi
ClearWindow;
ClearWindow (clMoneyGreen);
oxiri.
Yashil pul rangi

Grafika
ibtidoiylar
Nuqta
Chiziq
To'rtburchak
Doira
Ellips
Sektor
yoy

Nuqta
SetPixel(x,y,rang);
bir pikselni koordinatalari (x, y) bilan bo'yaydi
rang
GraphABC dan foydalanadi;
boshlanishi
SetPixel (300,200, clred);
oxiri.

Chiziqlar
LineTo(x,y);
joriy qalam joyidan nuqtaga segment chizadi
(x,y)
qalam koordinatalari ham bo'ladi
(x,y) ga teng
x,y
GraphABC dan foydalanadi;
Boshlanishi
LineTo (300,200);
oxiri.

Chiziqlar
MoveTo(x,y);
joriy chizilgan joyini o'rnatadi
nuqtaga (x, y)
x1,y1
x2,y2
GraphABC dan foydalanadi;
Boshlanishi
MoveTo (150,50);
LineTo (500,250);
oxiri.

Chiziqlar
Chiziq(x1,y1,x2,y2);
boshi (x1,y1) nuqtada va oxiri bo'lgan segmentni chizadi
nuqtada (x2,y2)
x1,y1
x2,y2
GraphABC dan foydalanadi;
boshlanishi
qator (100,50,500,250);
oxiri.

ranglar
clAkuamarin
clBisque
clBlue
clBurlyWood
clShokolad
clCornsilk
clDarkBlue
clDarkGray
clDarkMagenta
clDarkOrchid
clDarkSeaGreen
clDarkViolet
clDeepSkyBlue
clAzure
clBlack
clBlueViolet
clCadetBlue
clCoral
clCrimson
clDarkCyan
clDarkGreen
clDarkOliveGreen
clDarkRed
clDarkSlateBlue
clDeepPink
clDimGray
clBej
clBlanched Almond
clBrown
clChartreuse
clCornflowerBlue
clCyan
clDarkGoldenrod
clDarkKhaki
clDarkOrange
clDarkTurkuaz
clDarkSlateGray
clDarkSalmon
clDodgerBlue

ranglar
clFuchsia
clGold
clGreen
clHotPink
clIvory
clLavenderBlush
clLightBlue
clGainsboro
clGoldenrod
clGreenYellow
clIndianRed
clKhaki
clLawnGreen
clLightCoral
clGhostWhite
clGray
clHoneydew
clIndigo
clLavender
clLemonChiffon
clLightCyan
clLightGoldenrodHa
clLightGray
clLight Green
past
clLightPink
clLightLosos
clLightSeaGreen
clLightSkyBlue
clLightSlateGray
clLightSteelBlue
clLightYellow
clLime
clLimeGreen
clLinen
clMagenta
clMaroon
clMediumAquamari
clMediumBlue
clMediumOrkide
yo'q
clMediumPurple
clO'rtaDengizGreen clO'rtaSlateBlue
clMoneyGreen
clPlum
clMistyRose
clRandom - tasodifiy
butun palitradan rang
Paskal ranglari

Chiziq rangi
SetPenColor(rangli);
parametr bilan belgilangan qalam rangini o'rnatadi
rang
GraphABC dan foydalanadi;
boshlanishi
SetPenColor (clred);
qator (30,30,400,350);
oxiri.

Nuqta chiziq
SetPenStyle(<…>);
qalam uslubini belgilaydi
GraphABC dan foydalanadi;
boshlanishi
setpencolor(clred);
SetPenWidth(4);
SetPenStyle(psSolid);(Qattiq)
Qator (10,75,350,75);
SetPenStyle(psDash);(Dash)
Qator (10,100,350,100);
SetPenStyle(psDot); (nuqta)
Qator (10,125,350,125);
SetPenStyle(psDashDot); (Nuqtali chiziq)
Qator (10,150,350,150);
SetPenStyle(psDashDotDot);
(Muqobil chiziqcha)
Qator (10,175,350,175);
oxiri.

Chiziq qalinligi
SetPenWidth(n);
qalamning kengligini (qalinligini) n ga o'rnatadi
piksellar
GraphABC dan foydalanadi;
boshlanishi
setpenwidth(20);
setpencolor(clred);
qator (30,30,400,350);
oxiri.

Uchburchak
Chiziq(x1,y1,x2,y2);
LineTo(x,y);
GraphABC dan foydalanadi;
boshlanishi
setpenwidth(20);
setpencolor(clred);
qator (300,100,500,300);
lineto (100,300);
lineto(300,100);
suv toshqini (300,200, clgreen);
oxiri.

To'rtburchak
To'rtburchak (x1,y1,x2,y2);
koordinatalari bilan berilgan to'rtburchak chizadi
qarama-qarshi uchlari (x1,y1) va (x2,y2)
x1,y1
x2,y2
GraphABC dan foydalanadi;
boshlanishi
To'rtburchak (50,50,200,200);
oxiri.

Rangni to'ldirish
FloodFill(x,y,rang);
nuqtadan boshlab bir xil rangdagi maydonni rang bilan to'ldiradi
(x,y)
x1,y1
x2,y2
GraphABC dan foydalanadi;
boshlanishi
To'rtburchak (50,50,200,200);
FloodFill(100,100,clBlue);
oxiri.

Cho'tka bilan to'ldirish
SetBrushColor(rangli);
cho'tka rangini o'rnatadi, yopiqgacha cho'ziladi
sxemasi, uning tavsifi o'rnatish tartibiga mos keladi
cho'tka ranglari
GraphABC dan foydalanadi;
Boshlanishi
SetBrushColor (clGreen);
To'rtburchak (50,50,300,300);
oxiri.

Cho'tka bilan to'ldirish
SetBrushStyle(<…>);
cho'tka uslubi turini o'rnatadi
bsSolid
Qattiq cho'tka (muallif
standart)
bsClear
Shaffof cho'tka
bsHatch
Chiziqli cho'tka
bsGradient
Gradient cho'tkasi

Cho'tka bilan to'ldirish
Cho'tkasi lyuk uslublari sanab o'tilgan tur bilan belgilanadi
SetBrushHatch(<…>);
Cho'tkasi lyuk uslublari uchun quyidagi konstantalar aniqlanadi:
GraphABC dan foydalanadi;
Boshlanishi
SetBrushStyle(bsHatch);
tomonidan
standart
uslub 0 o'rnatilgan -
qattiq
to'ldirish
rang.
SetBrushHatch(bhHorizont
al);
Rectangle(10,10,100,100);

oxiri.

Cho'tka bilan to'ldirish
Strok cho'tkasi uchun siz qo'shimcha ravishda o'rnatishingiz mumkin
mulk:
SetHatchBrushBackgroundColor(clGold) ;
GraphABC dan foydalanadi;
Boshlanishi
SetBrushStyle(bsHatch);
tomonidan
standart
uslub 0 o'rnatilgan -
SetHatchBrushBackgroundColor(cl
qattiq
to'ldirish
Oltin);
rang.
SetBrushColor(clCoral);
SetBrushHatch(bhHorizontal);

Kontur rangi va qalinligi
SetPenWidth(w);
SetPenColor(rangli);
GraphABC dan foydalanadi;
boshlanishi
SetPenColor (clred);
SetPenWidth(20);
To'rtburchak (50,50,200,200);
FloodFill(100,100,clBlue);
oxiri.

Doira
Doira(x,y,r);
markazi (x,y) va da joylashgan aylana chizadi
radius r
r
x1,y1
GraphABC dan foydalanadi;
boshlanishi
Doira (500,200,100);
FloodFill(500,200,clred);
oxiri.

Ellips
Ellips(x1,y1,x2,y2);
tasvirlangan ellipsni chizadi
qarama-qarshi koordinatali to'rtburchaklar
uchlari (x1,y1) va (x2,y2).
x1,y
1
x1,y
1
GraphABC dan foydalanadi;
boshlanishi
Ellips (50,50,200,350);
FloodFill(50+100,50+100,clred);
Ellips (250,150,550,300);
FloodFill(250+100,150+100,clBlue);
oxiri.
x2,y
2
x2,y
2

Doira yoyi
Yoy(x,y,r,a1,a2);
markazi (x,y) nuqtada va radiusi r bo‘lgan aylana yoy chizadi,
a1 va a2 burchaklarni hosil qiluvchi ikkita nurlar orasiga o'ralgan
OX o'qi bilan (a1 va a2 haqiqiy, darajalarda ko'rsatilgan va
soat miliga teskari hisoblangan)
r
x,y
GraphABC dan foydalanadi;
Boshlanishi
SetPenWidth(10);
*
Yoy(300,250,150,45,135)
;
oxiri.

Sektor
Pirog(x,y,r,a1,a2);
yoy bilan chegaralangan doira sektorini chizadi (parametrlar
protseduralar Arc protsedurasidagi kabi ma'noga ega)
GraphABC dan foydalanadi;
boshlanishi
Pirog (300,200,100,0,90);
FloodFill (300+10,200-10,
clAkuamarin);
oxiri.

Matn chiqishi
TextOut(x,y,'string');
(x,y) pozitsiyasida matn qatorini chiqaradi (nuqta (x,y) belgilaydi).
o'z ichiga olgan to'rtburchakning yuqori chap burchagi
matn)
GraphABC dan foydalanadi;
boshlanishi
TextOut(100,30, "Kvadrat");
To'rtburchak (50,50,200,200);
FloodFill(55,55,clBlue);
oxiri.

Shrift bilan amallar
SetFontName('ism');
shrift nomini o‘rnatadi
SetFontColor(rangli);
shrift rangini o‘rnatadi
SetFontSize(sz);
shrift hajmini nuqtalarda o'rnatadi
SetFontStyle(fs);
shrift uslubini o‘rnatadi

Shrift nomi
Standart shrift o'rnatilgan
nomi MS Sans Serif
Eng keng tarqalgan shriftlar
Times New Roman, Arial va Courier New
Shrift nomini hisobga olmagan holda yozish mumkin
ro'yxatdan o'tish
Masalan:
SetFontName('Times New Roman');

Shrift uslubi
fsNormal - normal
Nomlangan konstantalar bilan aniqlanadi:
fsBold - qalin
fsItalic - qiya
fsBoldItalic – qalin kursiv
fsUnderline – tagiga chizilgan
fsBoldUnderline – qalin tagiga chizilgan
fsItalicUnderline – qiya chizilgan
fsBoldItalicUnderline – qalin kursiv ostidagi chiziq

Masalan:
GraphABC dan foydalanadi;
Boshlanishi
SetFontName('Arial');
SetFontSize(20);
SetFontColor(clRed);
TextOut(10,10,'normal");
SetFontStyle(fsItalic);
SetFontColor (clBlue);
TextOut(10,50, ‘qiyalik”);
SetFontStyle(fsBold);
SetFontColor (clRandom);
TextOut(10,90, ‘qalin”);
SetFontStyle(fsUnderline);
SetFontColor (clRandom);
TextOut(10,130,‘tagi chizilgan”);
SetFontStyle(fsBoldItalicUnderline);
SetFontColor (clRandom);
TextOut(10,170,'qalin, kursiv, tagiga chizilgan");
oxiri.

Ishlatilgan
ranglar
Rangni funksiya yordamida ham sozlash mumkin
RGB(r,g,b) bu ​​yerda r, g va b butun sonlar
0 dan 255 gacha.
Funktsiya butun son qiymatini qaytaradi
qizil, yashil va o'z ichiga olgan rang kodi
r, g va b intensivlikdagi ko'k komponentlar
mos ravishda (0 minimalga mos keladi
intensivlik, 255 - maksimal).
RGB (255,255,255) - mos keladi
oq rang.
RGB(0,0,0) - qora rangga mos keladi.

Masalan:
GraphABC dan foydalanadi;
boshlanishi
Clearwindow(rgb(200,150,250));
TextOut(93,30, "Kvadrat");
To'rtburchak (50,50,200,200);
FloodFill(55,55,clRed);
TextOut (275,30, "Elips");
Ellips (250,50,350,200);
FloodFill(250+50,50+50,clYellow);

Slayd 2

Har bir piksel (nuqta) ikkita koordinataga ega: x va y.Pikselning geometrik o'lchamlari monitorning ruxsati bilan aniqlanadi.

Slayd 3

Misol 1. GraphAbc modul dasturini tochka ulashni ko'rsatish; graphabc dan foydalanadi; (GraphAbc modulini ulash) begin setwindowsize(640,480);(grafik oynaning o'lchamini o'rnatadi) setpixel(100,120,clBlack); (qalam rangini qora rangga o'rnatadi va koordinatalarda (100,120) nuqta chizadi) oxirida. Ushbu misolda biz maxsus holatda setpixel buyrug'idan foydalanish bilan tanishdik. Umuman olganda, bu buyruq quyidagicha ko'rinadi: setpixel(x:integer,y:integer,c:color) – koordinatalari (x,y) bo'lgan nuqtani c rangi bilan chizadi. clQora – qora clBinafsha – binafsharang clOq – oq clQizil – qizil clYashil – yashil clJigarrang – jigarrang clBlue – ko‘k clSkyBlue – och ko‘k clSariq – sariq

Slayd 4

Ikki nuqtani koordinatalari (120,150) va (150,80) bilan bog'lovchi segmentni qizil rangli qalam yordamida chizish dasturi quyidagicha ko'rinishi mumkin: 2-misol. Linii chiziq chizish dasturini ko'rsatish; graphabc dan foydalanadi; start setwindowsize(640,480); setpencolor(clred); (qalam rangini qizil rangga o'rnatadi) chiziq (120,150,300,100); ((120,150) dan (300,100) gacha segmentni chizadi) oxirigacha.

Slayd 5

Misol 3. Turli qalam ranglari bilan chizilgan chiziqlarni ko'rsatish treugolnik dasturi; graphabc dan foydalanadi; start setwindowsize(640,480); setpenwidth(5); (joriy qalamning kengligini o'rnatadi. Chiziq kengligini tashkil etuvchi piksellar soni qavs ichida ko'rsatilgan) setpencolor(clred); (qalam rangini qizil rangga o'rnatadi) chiziq (100,200,170,70); (koordinatalari (100,200) bo'lgan nuqtadan (170,70) koordinatali nuqtaga segment chizadi) setpencolor(clGreen); (qalam rangini yashil rangga o'rnatadi) chiziq (170,70,250,200); ((170,70) nuqtadan (250,200) nuqtaga chiziq chizadi) setpencolor(clBlue); (qalam rangini ko'k rangga o'rnatadi) chiziq (250,200,100,200);((250,200) nuqtadan (100,200) nuqtaga chiziq chizadi) (natijada tomonlari turli rangdagi uchburchak hosil bo'ladi) tugaydi.

Slayd 6

Shuni yodda tutish kerak: 1. Chiziqni chizishda uning o'lchamini (uning uchlari koordinatalarini), rangini, kengligini (qalinligini) va uslubini belgilashingiz mumkin. 2. GraphAbc modulida chiziq uslubini o'rnatish uchun SetPenStyle (Style) protsedurasi mavjud bo'lib, u erda Style - qalam uslubi konstantalari (3-bobga ilovaga qarang). 3. Chiziq qattiq, nuqtali, nuqta-nuqtali, chiziqli bo'lishi mumkin. Yopiq shakllarni bo'yash mumkin.

Slayd 7

4-misol. Chiziqlar yordamida yopiq figuralarni chizish va ularni bo'yashni ko'rsatish Treug_zakrash dasturi; graphabc dan foydalanadi; start setwindowsize(640,480); clearwindow(clWhite);(grafik oynani oq rang bilan tozalaydi) setpenwidth(3); (joriy qalamning kengligini o'rnatadi) setpenstyle(pssolid); (chiziq uslubini o'rnatadi - qattiq chiziq) setpencolor(clgreen);(qalam rangini yashil rangga o'rnatadi) line(100,200,170,70); (yashil rangda chiziqlar chiziladi) chiziq (170,70,250,200); qator (250,200,100,200); suv toshqini (440,120,clred); (Uchburchakni qizil rangga bo'yaydi) tugaydi.

Slayd 8

Dasturni bajarish natijasida grafik oynada monitor ekranida yashil rangda chizilgan va qizil rangda soyalangan uchburchak paydo bo`ladi.Shuni yodda tutish kerak: 1. Konturi bir rangda chizilgan yopiq shakllarnigina bo`yash mumkin. 2. To'ldirish protsedurasida (x,y,c) nuqta koordinatasi (x,y) ko'rsatiladi, bu bo'yalgan rasmning ichki maydoniga tushishi kerak.

Slayd 9

To'rtburchaklar va doiralar mos ravishda rectangle(x1,y1,x2,y2) va circle(x,y,r) buyruqlari yordamida chiziladi. Keling, buni qanday qilib to'g'ri to'rtburchak va aylana chizadigan dastur misolida ko'rib chiqaylik. 5-misol. To`g`ri to`rtburchak va aylana chizish dasturi geometriyasini ko`rsatish; graphabc dan foydalanadi; start setwindowsize(640,480); setpencolor(clBlue); (to'rtburchakning konturini chizish uchun ko'k qalam rangini o'rnatadi) setpenwidth(6); (qalam kengligini o'rnatadi) rectangle(50,50,250,150);(qarama-qarshi cho'qqilarning koordinatalari bilan belgilangan to'rtburchak chizadi) setpencolor(clred); (doira konturini qizil rangga chizish uchun qalam rangini o'rnatadi) doira(350,100,60); (koordinatalari (350,100) va radiusi 60) oxirida markazlashtirilgan doira chizadi.

Slayd 10

To`rtburchak va aylana va ularni yozish dasturi geometriyasini bo`yashni ko`rsatish3; graphabc dan foydalanadi; start setwindowsize(640,480); clearwindow(clYellow);(fon rangini sariq rangga o'rnatadi) setpencolor(clteal); (qalamning ko'k-yashil rangini o'rnatadi) setpenwidth(5); (chiziq kengligini o'rnatadi) setbrushcolor(chinnigullar);(cho'tkaning zaytun rangini o'rnatadi) to'rtburchak (100,100,300,200); (zaytun rangi bilan to'ldirilgan to'rtburchak chizadi) setbrushcolor(clblue);(cho'tka rangini ko'k rangga o'rnatadi) doira(400,150,50); (ko'k doira chizadi) setfontstyle(fsbold);(shrift uslubini o'rnatadi) setfontsize(15);(shrift o'lchamini o'rnatadi) setbrushcolor(clwhite);(cho'tka rangini oq rangga o'rnatadi) setfontcolor(chinnigul);(zaytun rangini o'rnatadi) shrift rangi) matni (100,220, "To'rtburchak"); (sarlavha yozadi) setfontcolor(clblue); (shrift rangini ko'k rangga o'rnatadi) textout(380,220,"Doira"); (yozuv qiladi) tugaydi.

Slayd 11

Paskalning ABC grafik protseduralari: 1. SetPixel(x,y,color: integer); - koordinatali (x,y) bir pikselni rang rangi bilan bo'yaydi. 2. Chiziq(x1,y1,x2,y2: butun son); - (x1,y1) nuqtadan (x2,y2) nuqtaga segment chizadi. 3. Circle(x,y,r: butun son); - markazi (x,y) nuqtada va radiusi r bo‘lgan aylana chizadi. 4. Rectangle(x1,y1,x2,y2: butun son); -qarama-qarshi uchlari (x1,y1) va (x2,y2) koordinatalari bilan belgilangan to‘rtburchak chizadi. 5. TextOut(x,y: integer; s: string); - s satrni (x,y) pozitsiyasiga chiqaradi (nuqta (x,y) to'rtburchakning yuqori chap burchagini belgilaydi, u s satrdagi matnni o'z ichiga oladi). 6. FloodFill(x,y,rang: integer); - (x,y) nuqtadan boshlab bir xil rangdagi maydonni rang bilan to'ldiradi. 7. FillRect(x1,y1,x2,y2: integer); - qarama-qarshi cho'qqilar (x1,y1) va (x2,y2) koordinatalari bilan belgilangan to'rtburchakni joriy cho'tka rangi bilan to'ldiradi.

Slayd 12

Ushbu dasturlarni bajarish natijasida monitor ekranida nimalar ko'rsatiladi? dastur grafikasi1; graphabc dan foydalanadi; boshlash setpenwidth(10); setpencolor(clred); Chiziq (100,100,270,90); Oxiri. Grafika2 dasturi; graphabc dan foydalanadi; boshlash setpenwidth(8); setpencolor(clblue); doira (200,150,50); Oxiri.

Slayd 13

Daftaringizga nusxa oling: Mavzu: Dasturlash tilining grafik imkoniyatlari. 1. Chiziq(x1,y1,x2,y2; - (x1,y1) dan (x2,y2) gacha bo'lgan segment 2. Doira(x, y, r); - markazi (x,y) va radiusi r bo'lgan doira 3. Rectangle(x1,y1,x2,y2);- qarama-qarshi cho'qqilar (x1,y1) va (x2,y2) koordinatalari bilan aniqlangan to'rtburchak 4. FloodFill(x, y, rang); - maydonni to'ldiradi. (x, y) nuqtadan boshlab bir xil rangdagi rang rangi.

Barcha slaydlarni ko'rish

Ulashish: