end.
3. Ну=та, чизи= ва ранглар
Биз экранда график режимни =андай ырнатишни кыриб чи=дик. Энди экранда турли хил ну=талар, чизи=лар ва шакллар чизишни ташкил =илайлик. Graph модулида 80 тага якин функция ва процедуралар мавжуд былиб, улардан фойдаланиб =уйидаги ишларни =илиш мумкин:
- ну=талар =уриш;
- кесмалар чизиш;
- эллипс ва айланалар чизиш;
- ты\ри тыртбурчаклар ва кыпбурчаклар чизиш;
- ёпи= шакларни турли рангларга быяш, щамда бир неча щил стандарт ва керагича ностандарт усуллар билан сощаларни штрихлаш;
- экранга турли шрифтдаги матнларни чи=ариш;
- экран сощаларини эслаб =олиш ва уларни суриш.
График режимда ишлаш худди математика фанидаги Декарт координаталар системасида ну=талар ор=али турли щил шакллар ясашга ыхшаб кетади. Экрандаги щар бир ну=та ызининг координаталарига эга. Экраннинг чапдан энг тепадаги ну=тасининг координатаси (0,0)га тенг. X координатаси чапдан ынгга ысиб борса, Y координатаси ю=оридан пастга =араб ысиб боради. Ну=та координатасини ани=ловчи (x,y) жуфтликдаги биринчи =иймат ОХ ы=идан, иккинчи =иймат эса ОY ы=идан ани=ланади. Экраннинг ынгдан энг пастидаги ну=таси охирги ну=та щисобланади ва унинг координатаси график режимнинг турига бо\ли=. Масалан,VGAHi режимида экрандаги ну=талар сони 640х480га тенг. Ынгдан энг пастки ну=та координатаси эса (639,479) га тенг былади.
Энди Graph модулининг энг кып ишлатиладиган функция ва процедуралари билан танишиб чи=айлик.
1. PutPixel(x,y,color) процедураси -(x,y) координатали ну=тани Color параметри билан ани=ланган рангга быяб беради;
Мисол: PutPixel(100,120,Red) - экранда (100,120) координатали =изил ну=та пайдо былади.
2. GetPixel(x,y) функцияси - (x,y) координатали ну=танинг рангини ани=лаб беради;
Мисол: Color:=GetPixel(100,120); (100,120) координатадаги ну=тага =ыйилган ранг =ийматини ани=лайди.
3. Line(x1,y1,x2,y2) процедураси -(х1,у1) ва (х2,у2) координатали ну=таларни туташтирувчи кесма чизади;
4. Circle(x,y,Radius) процедураси - маркази (х,у) ну=тада жойлашган радиуси Radius га тенг айлана чизади;
5. Rectangle(x1,y1,x2,y2) процедураси-чап ю=оридаги бурчаги (х1,у1) ва ынгдан пастки бурчаги (х2,у2) координатали ну=талар ор=али ытказилаган ты\ри тыртбурчак чизади;
6. SetColor(Color) процедураси - чизиш рангини ырнатади;
График режимда рангларни белгилаш учун худди матнли режимдаги каби =уйидаги ызгармаслар ишлатилади:
const
Black=0;{+ора}
Blue=1;{Кык}
Green=2;{Яшил}
Cyan=3;{Зангори ранг}
Red=4;{+изил}
Magenta=5;{Пуштиранг}
Brown=6;{Жигарранг}
LightGray=7;{Оч кулранг}
DarkGrаy=8;{Ты= кулранг}
LightBlue=9;{Оч щаворанг}
LightGreen=10;{Оч кык}
LightCyan=11;{Оч зангориранг}
LightRed=12;{Оч =изил}
LigthMagenta=13;{Оч пуштиранг}
Yellow=14;{Сари=}
White=15;{О=}
Мисол:
uses Graph;
var
GD,GM:integer;
Rang,Radius:word;
begin
GD:=Detect; {Драйверни автоматик тарзда ани=лаш}
InitGraph(GD,GM,’ ’); {График режимни ишга тушириш}
for Rang:=15 downto 0 do
begin
setcolor(Rang); {Чизиш рангини ырнатиш}
Radius:=Rang*10;
Circle(GetMaxX div 2, GetMaxY div 2,Radius);
{Маркази экран марказида жойлашган айлана чизиш}
end;
Readln;
CloseGraph;
end.
Do'stlaringiz bilan baham: |