Payshanba, 2024-04-25, 11:16 AM
Xush kelibsiz! Mehmon

My site

Sayt menyusi
Bo'lim kategoriyalari
Pascal dasturlash tilining darsliklari [15]
Pascal dasturlash tilini o'rganamiz
Bizning ijtimoiy so'rov
Rate my site
Total of answers: 31
Statistika

Jami onlaynlar : 1
Mehmonlar : 1
Foydalanuvchilar : 0
Bosh sahifa » 2015 » Aprel » 13 » Pascal dasturlash tili. 15-Qism Grafik modullar bilan ishlash
5:31 PM
Pascal dasturlash tili. 15-Qism Grafik modullar bilan ishlash

Assalomu aleykum bo'lajak dasturchilar bugun sizlar bilan Pascal dasturlash tilida yozilgan dasturlar kodlari haqida bo'ladi. Agar siz dasturlar kodlarini qanday ishlanishini va yangidan yangi algoritmlarni o'rganib borsangiz siz Pascal dasturlash tili bo'yicha ko'p bilimlarga ega bo'laolasiz.


Kompyuter grafikasi ilmiy tajriba va loyihalashning avtomatlashtirilgan tizimlarda, robototexnika va boshqa sohalarda keng ishlatiladi. 
Kompyuter monitori grafik va matnli ma’lumotlarni ekranga chiqaradi. Monitor maxsus videoadapter boshqaruvida matnli va grafikli holatda ishlaydi. Matnli ish holatida kompyuter ekrani har bir qatorda 80 tadan pozitsiya bo‘lgan 25 ta satrga bo‘linadi. Grafikli ish holatida esa monitordagi har qanday tasvir xuddi televizor ekranidek, ya’ni ma’lum bir ranga bo‘yalgan nuqtalar to‘plami kabi hosil bo‘ladi. Tasvirning qanchalik tiniqligi videoadapterning imkoniyatiga, ya’ni gorizontal va vertikal bo‘yicha chiqariladigan nuqtalar miqdoriga qarab belgilanadi. Masalan, videoadapter SVGA ekranga quyidagicha - 640x480, 800x600, 1024x768 nuqtalarni beradi.

2.Ekranni grafik holatga o‘tkazish
Oddiy matnli щolatdan grafik щolatga o‘tish uchun Graph modulining InitGraph prosedurasi ishlatiladi.
                   InitGraph(Gd,Gm,Path);
bu erda        Gd   -drayver nomeri;  Gm  -rejim nomeri;
Path -kerakli drayverga yo‘l ko‘rsatadi.
Agar Path=’’ bo‘sh bo‘lsa drayverni joriy kotologdan izlaydi.      Agar Gd=0 bo‘lsa, kerakli drayverni o‘zi avtomatik ravishda tanlaydi, ya’ni Gd=Detect. Detect nolga teng parametr. Graph - modulini chaqirish dastur bosh qismida beriladi, ya’ni
uses
                                 Graph;
Grafik rejimni oldingi holatiga qaytarish uchun, ya’ni yopish uchun CloseGraph; prosedurasi ishlatiladi.

 

  3.Graph modulining protsedura va funksiyalari
Ekranda har bir nuqta o‘z koordinatasiga ega. Koordinata boshi ekranning yuqori chap burchagi bo‘lib, u (0,0) dan boshlanadi. Nuqtalar koordinatasi pastga va o‘nga qarab o‘sib boradi. 
Graph – modulining protsedura va funksiyalarini ko‘rib chiqamiz:
PutPixel(x,y,color); -protsedura ekranda koordinatasi (x,y) bo‘lgan nuqtani tasvirlaydi. Color parametri shu nuqtaga rang beradi.
Misol: PutPixel(100,120,Red); bu erda ekranning (100,120) nuqta qizil rangda tasvirlanadi. Red=4 nuqtaga qizil rang beradi.
GetPixel(x,y); -funksiyasi nuqta rangini aniqlaydi.
Misol: Col:=GetPixel(50,80); bu erda Col parametriga nuqta rangi yuboriladi. 
Line(x1,y1,x2,y2); -protsedura koordinatalari (x1,y1) va (x2,y2) bo‘lgan kesmani chizadi.
Circle(x,y,Radius); - markazi (x,y) nuqta bo‘lgan va radiusi Radius bo‘lgan aylana chizadi.
Rectangle(x1,y1,x2,y2); -protsedura to‘g‘ri to‘rtburchak chizadi.
(x1,y1) -yuqori chap burchak koordinatasi;
(x2,y2) -pastki o‘ng burchak koordinatasi.
SetColor(Color); -protsedura rasmga rang beradi. Color rang nomeri.
Quyidagi ranglar ishlatiladi:


Rang nomeri    
Rang

Rang nomeri

Rang

Bleck=0              

qora           

Blue=1                

ko‘k

Green=2      

yashil

Cyan=3              

Bryuzarang

Red=4       

qizil  

Magenta=5 

malinarang

Brown=6              

jigarrang    

LightGray=7       

och kulrang

DarkGray=8

to‘q kulrang

LightBlue=9        

och havorang

LightGreen=10   

och yashil  

LightCyen=11      

och bryuzarang

LightRed=12       

och qizil     

LightGray=13      

och malinarang

Yellow=14        

sariq          

White=15     

oq

Misol 2.
Quyidagi dastur to‘g‘ri to‘rtburchak chizadi.
Program TT;
Uses Graph;
Var gd,gm: Integer;       
Begin 
gd:=detect;   InitGraph(gd,gm,’’);         
Rectangle(30,30,120,120); Readln;
CloseGraph;
End.   

Bar(x1,y1,x2,y2);    -rangli yoki shtrixlangan to‘g‘ri to‘rtburchak chizish;
Bar3d(x1,y1,x2,y2,depth,top); -rangli yoki shtrixlangan paralelopeped chizish;
 FillEllipse(x,y,xradius,yradius); -rangli yoki shtrixlangan ellips chizish;
SetFillStyle(Style,Color); -shtrix va rang berish. Bu erda  Style shtrix, Color rang tanlovchi o‘zgarmas parametr.
Style o‘zgarmas parametr bo‘lib, u har xil shtrixlar bilan figuralarni to‘ldiradi. Ular quyidagilardir:
Const 
EmptyFill=0;        { fon rangi }   
SolidFill=1;           { joriy rangni beradi }
LineFill=2;            { qalin gorizantal chiziq } 
StstashFill=3;       { ingichka qiyshiq chiziq }
StoshFill=4;          { qalin qiyshiq chiziq }
BkStashFill=5;     { qalin qiyshiq chiziq }
LtstashFill=6;       { qiyshiq yo‘l-yo‘l chiziq }
HatchFill=7;        { katakchalar bilan to‘ldirish }
XhatchFill=8;      { qiyshiq katak bilan to‘ldirish } 
InterLeaveFill=9; { qiyshiq shtrix chiziq }
WideDotFill=10;    { kam nuqtalar bilan to‘ldirish } 
CloseDotFill=11;    { bo‘lak-bo‘lak nuqtalar  } 
UseFill=12;                     { foydvlanuvchi shtrixi }
Grafik rejimda matn yozish uchun quyidagi protseduralar ishlatiladi. 
SetTextStyle(Font, Detection, Size); -kerakli shriftni ishga tushiradi.
Bu erda  
Font           - shriftni tanlash;
Detection    - yozuv yo‘nalishini belgilash;
Size            - shrift o‘lchamini tanlash.
SHrift va matn yozuvi yo‘nalishi quyidagi o‘zgarmas bilan aniqlanadi.
Const                                     { shrift }
DefaultFont=0;     { standart shrift }
TriplexFont=1;     { vektorli shrift }
{ tekst yo‘nalishi }
HarizDir=0;          { chapdan o‘nga }
VertDir=1;            { patsdan yuqoriga } 
OutTextXY(x,y,TextString); -(x,y) koordinatali nuqtadan TextString nomli matn qatorini kiritadi.

                                 DOIMO BIZ BILAN BO'LING!!!

 

 

Kategoriyalar: Pascal dasturlash tilining darsliklari | Ko'rilganlar: 4647 | Tomonidan qo'shilgan: Coder | Teglar: Pascal dasturlash tilida grafika bi | Reytinglar: 0.0/0
Jami izohlar: 0
avatar
Kirish
Qidirish
Taqvim
«  Aprel 2015  »
YakDushSeshChorPayJumShan
   1234
567891011
12131415161718
19202122232425
2627282930
Arxiv maqolalar
//algoritm.ucoz.net