linkedin facebook linkedin facebook nod32

Paskalda grafik modullari

Muallif: Mengliyev Sh.

Qo`shilgan sana: 2015-01-14

Paskal grafik modullari

1.Kirish
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.

1059 marta o`qildi.

Parol:
Eslab qolish.


Ro`yhatdan o`tish

testing

+998915878681

Siz o`z maxsulotingizni 3D reklama ko`rinishda bo`lishini xohlaysizmi? Unda xamkorlik qilamiz.

3D Reklama


Рейтинг@Mail.ru
Рейтинг@Mail.ru

Besucherzahler
счетчик посещений