Ўзбекистон Республикаси Олий ва Ўрта Махсус таълим вазирлиги Фаргона политехника институти



Download 1,17 Mb.
bet46/69
Sana28.06.2022
Hajmi1,17 Mb.
#712699
1   ...   42   43   44   45   46   47   48   49   ...   69
Bog'liq
PASCAL

3.38Ранг ва стилни урнатиш


SetFillStyle, SetFillPattern, FloodFill, SetAspectRatio

Фойдаланувчини кулайлиги учун GRAPH модулига графика фигураларини ташки ва ички областларини тулдириш учун , бутун бир белги - тулдирувчилар камбинацияси урнатилган. Уларни маскалар деб атаймиз. Маска -ранг комбинациясини тулдириш стили деб кабул килинган.


Олдиндан аникланган стиллар билан ишлаш учун руйхатлари 13.17 таб.да келтирилган GetFillSettings ва SetFillStyle функцияларидан фойдаланамиз. Уларни куриб чикамиз:


SetFillStyle (Pattern: word; Color: word)
Бу ерда Pattern маскани ва уни ранги Color ни урнатади.
Кейинги мисолда EGA/VGA адаптери учун 16-хил рангли политра ишлатилган.

SetFillStyle(SlashFill,Yellow);


Bar(10,10,50,150); { устун маска билан тулдирилган. // сарик ранг }

Табл. 13.17. Тулдиришнинг стандарт стиллари.



Константа

Киймат

Маска

EmptyFill

0

Фон ранги билан тулдириш

SolidFill

1

Жорий ранг блан тулдириш

LineFill

2

- - белгилар билан тулдириш

LtslashFill

3

// нормал калинликдаги белгилар билан тулдириш

SlashFill

4

// иккиланган калинлидаги белгилар билан тулдириш

BkslashFill

5

// иккиланган калинлидаги белгилар билан тулдириш

LtbkSlashFill

6

// нормал калинликдаги белгилар билан тулдириш

HatchFill

7

Ингичка чизикли вертикаль-горизонталь (узук –узук) штриховкалар билан тулдириш

XhatchFill

8

Кесишган (узук –узук) штриховкали "хар замонда" ингичка чизик билан диогонал буйича тулдириш.

InterLeaveFill

9

Кесишган (узук –узук) штриховкали "тез-тез" ингичка чизик билан диогонал буйича тулдириш.

WideDotFill

10

"хар замонда" нукталар билан тулдириш

CloseDotFill

11

"тез-тез" нукталар билан тулдириш

UserFill

12

Фойдаланувчи томонидан аникланган тулдириш маскаси билан тулдириш.

Маска коди ва ранги хакидаги ахборотни GetFillSettings (VAR Inf: FillSettingsType) процедураси ердамида олиш мумкин.

Кайтарилган ахборот Inf узгарувчисида булади ва куйидаги типга эга.


TYPE
FillSettingsType = RECORD


Pattern : word;
Color : word
END;

Мисол урнатилган маска ва унинг ранги хакидаги олиб ташлаш:


PROGRAM DemoGetFillSetting;


USES Crt, Graph;
VAR
DriverVar, ModeVar: integer;
Inf: FillSettingsType;
BEGIN
DriverVar:=detect;
InitGraph(DriverVar,ModeVar,'');
GetFillSettings(Inf);
CloseGraph;
WITH Inf DO BEGIN
Writeln('Mаска =', Pattern);
Writeln('Цвет =', Color)
END
END.

Охирги урнатилган FloodFill процедурасини куриб чикамиз. Бу процедура SetFillStyle ва SetFillPattern ердамида шаклни ички ва ташки областларини тулдириш учун хизмат килади в куйидагича езилади:




FloodFill (X, Y: integer; Border: word)
Б уерда X, Y -шаклнинг ички ва ташки нукта кординаталари,
Border - ранг. Иккинчи параметр Border ранги билан чегараланган областни тулдириш учун кулланилади. (X,Y) нукталар епик областда булса, у холда областнинг ичи тулдирилади, акси холда унинг ташки кисми тулдирилади.
Графика режимида хар бир драйвер учун у билан богланган сикиш еки пропорционаллик (aspect ratio). коэффиценти мавжуд.

Turbo-Pascal графика системаси фойдаланувчига сикилиш коэффицентини корректировка килиш имкониятини беради. Агар у 1 тенг булса, у холда ей айлана ва шунга ухшаш муракаб шакллар экаранда геометрик коррект холда пайдо булади. Сикилиш коэффицентининг бошка кийматларида, масалан айланани чикариш урнига элипис олинади. Купчилик холларда сикилиш коэффицентини фойдаланувчининг узи танлашига туги келади. Бунинг учун махсус GetAspectRatio и SetAspectRatio. процедурасидан фойдаланилади.




GetAspectRatio (VAR xAsp, yAsp: word) процедура пикселнинг иккита кийматини кайтаради. Пикселнинг yAsp вертикал улчови буйича хар доим 10000 минг киймат кайтарилади. Пикселнинг xAsp, улчови буйича 10000 дан кам булга киймат кайтарилади.

Сикилиш коэффицентини SetAspectRatio(xAsp, yAsp: word) воситасида узгартирилади. У сикилиш коэффицентини янги кийматини урнатади ва тугри бурчак, ей, айлана ва элиписларни экранга чикаришда кулланилади.


xAsp аргументи экран пикселининг кенглигини yAsp эса, пиксел баландлигини курсатади. Масалан, Агарда экрандаги пиксел баландлиги кенглигига нисбатан 1,2 марта куп булса, геометрик коррект чикариш куйидаги берилган сикилиш коэффицентлари буйича олинади:


SetAspectRatio(100, 120);

Бу функция графика ахборотларини стандарт булмаган маниторлар учун карректировка килиб беради.


Назорат саволлари


1.Кандай драйверларга графика драйверлари дейилади?

  1. Стандарт драйверлар нима?

  2. Фойдаланувчининг драйвери кандай драйверлар?

  3. Видеорежим нима ?

  4. Драйвер типлари нималар оркали берилади?

  5. Видеорежимни инициализациялаш кандай бажарилади ?

  6. Ранг ва палитра кандай урнатилади?

  7. SetPalette ва SetAllPalette нинг вазифаси нима?

  8. Жорий палитра хакидаги ахборот кандай олинади?

  9. График фигуралар кандай курилади?

  10. Айлана, эллипс ва х.з.лар кайси процедура ердамида чизилади?

  11. Маска нима?


Download 1,17 Mb.

Do'stlaringiz bilan baham:
1   ...   42   43   44   45   46   47   48   49   ...   69




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