Тақырып: компьютерлік графика негіздері жоспар



жүктеу 1.02 Mb.
бет1/7
Дата22.12.2017
өлшемі1.02 Mb.
  1   2   3   4   5   6   7
Тақырып: КОМПЬЮТЕРЛІК ГРАФИКА НЕГІЗДЕРІ
Жоспар

  1. Растрлік және векторлық графика

  2. Түстік модельдер

  3. Графикалық файлдардың форматтары


1. Растрлік және векторлық графика

Компьютер бейнелерді өңдеу үшін олар сандық түрде көрсетілуі керек, яғни кодталған болуы тиісті. Суретті кодтау үшін оны пиксел (Pixel) деп аталатын кішкентай біртекті бөліктерге бөледі. Суреттегі барлық түстер нөмірленеді және әрбір бөлік үшін оның нөмірі көрсетіледі. Осындай тәсілмен кодталған суреттер растрлық бейнелер (растр, bitmap – карта бит) деп аталады. Ақ-кара суретте әрбір пикселді көрсету үшін 1-бит жеткілікті. Түсті суреттерде бейнелеу үшін түстер саны 2N –дәрежесі болады, мұндағы N – пикселдің (нүктенің) түсі туралы ақпарат сақтайтың биттер саны. 8–биттік бейнеде 256 түс бар, 24 – биттік бейнеде 16000000-нан астам түсті көрсетуге болады.

Пикселдің түсін анықтайтын ақпараттың көлемі түстің тереңдігін (глубина цвета) анықтайды. Кодталған берілгендер негізінде бейнені құру үшін пикселдің көлемін анықтау керек. Тәжірибе жүзінде пикселдің көлемі орнына басқа екі шама қолданады: бейненің көлемі және оның шешілуі.

Шешілу (разрешение, resolution) - бейнені құрайтын пикселдердің орналасу тығыздығы, яғни, бір аудан бірлігіндегі орналасқан пикселдер саны.

Шешілуді әр түрлі құрылғыларға байланысты қарастыруға болғандықтан, шешілу өлшенеді:

1. бір дюймде орналасқан нүктелер санымен – dpi (dots Per Inch).

2. бір дюймде орналасқан пикселдер санымен – ppi (pixels per inch)

3. бір дюймде орналасқан сызықтар санымен (линеатура) – lpi (lines per inch)

Мониторда суреттерді бейнелеу үшін 72 dpi-120 dpi аралығында, ал қағазға 300 dpi болып шығады. Өте жоғары, сапалы бейнелерді түсті принтерде шығару үшін бұдан да жоғары шешу (разрешение) қолданылады.

Растрлық бейнелер есептеу техникасында кең қолданылады: фотосуреттер, интернеттегі суреттер.

Растрлық бейнелердің кемшіліктері:


  • Оларды үлкейту немесе кішірейту яғни, масштабтау қиынға түседі;

  • Жадта және дискіде көп орын алады.

Осы кемшіліктерден айырылу үшін бейнелерді кодтаудың векторлық тәсілін қолданады.

Кодтаудың векторлық тәсілінде суретті құрайтын геометриялық фигуралар: қисықтар, түзу сызықтар. Компьютер жадында математикалық фигуралар: дөңгелек, квадрат, эллипс, т.с.с. фигуралар, геометриялық абстракциялар түрінде сақталады. Мысалы, дөңгелекті кодтау үшін оны жеке пикселдерге бөлу қажеті жоқ, тек оның радиусын, ортасының координатасын, түсін сақтауға жеткілікті. Векторлық форматтағы бейне бір-біріне тәуелсіз өңдеуге болатын бөліктер жиынынан тұрады. Бұл бөліктер объекттер деп аталады. Бірнеше бөліктен жаңа объект құруға болады. Сондықтан объекттер түрі күрделі болуы мүмкін. Әрбір объект үшін оның көлемі, орналасуы сандық коэффициенттер түрінде сақталады. Сондықтан бейнені масштабтау қарапайым математикалық операциялар (графикалық элементтінің параметрін масштабтау коэффициенттеріне көбейту) көмегімен жүзеге асады. Ал бейненің сапасы өзгеріссіз қалады.

Векторлық графикамен жұмыстың кемшіліктері: нақты бейненің моделін құру күрделі.

Векторлық бейнені растрлық мониторда көреміз және растрлық принтерде шығарамыз. Сондықтан векторлық бейне экранға шығарылғанда растр түріне келтіріледі.

Векторлық графиканы растрге айналдыру дискретизация деп аталады. Ол үшін арнайы алгоритмдер қолданылады.
2. Түстік модельдер
Жоғарыда айтылғандай растрлық бейненің әрбір нүктесі түс туралы ақпаратты сақтайды. Векторлық объектте оның контуры және боялған аймақтың түсі туралы ақпаратты сақталады. Түстің тереңдігіне байланысты бұл ақпарат 1 – 32 биттен тұрады. Миллионнан астам түсті бейнені кодтау үшін түстерді номерлеу қолайсыз болады. Түсті бейнелерді бейнелеу үшін кез-келген түсті бірыңғай анықтау үшін түсті көрсетудің бірнеше түсті көрсету модельдері (цветовые модели) құрылған. Физика курсынан күннің сәулесін әр-түрлі түстерге бөлуінің болатынын білеміз. Сонымен қатар, әр түсті сәулелерді керекті қатынаста жинап, ақ түсті алуға болады. Сол сияқты қатынастарды кішкене өзгертіп, кез-келген түсті алуға болады. Теледидар және мониторлар люминафорынан көк, қызыл және жасыл түс шығады. Осы үш түсті араластырып көптеген түстер алуға болады. RGB-түсті көрсету моделі осыған негізделген (R-red, G-green, B-blue). Бұл модельде кез-келген түс құрамын сипаттайтын үш санмен беріледі. Түс тереңдігі – 24. Компьютерлік құрылғылардың көбісі осы модельді қолданылады. Осы үш түсті алғашқы (негізгі, аддитивті, І-ретті) түстер деп атайды. Оларды жұптап араластырса көгілдір Cyan, Magenta, Yellow (циан, пурпурлы, сары) субтрактивті (ІІ-ретті) түстер пайда болады. І-ретті және ІІ-ретті түстер базалық түстерді құрайды.

RGB моделінің түстік кеңістігі бірлік куб болады.

Өкінішке орай, RGB моделінде кейбір түстерді алуға болмайды. Бейнені принтерден шығарғанда қағазға тек белгілі түсті көрсететін түсті бояу жағылады. Барлық қалған түстер сіңіп кетеді немесе күн сәулесі әсерінен жойылады.

Түстердің ақ қағаздан RGB модулінің негізгі түстері шағылысу нәтижесінде CMY - (Cyan, Magenta ,Yellow) моделі пайда болды. Сонда RGB моделімен CMY моделі арасындағы қатынасты келесідей көрсетуге болады.



CMY- субтрактивті модель болып табылады. CMY моделінен CMYK– ға (C-Cyan-циан, M-Magenta-пурпурлы, Y-Yellow – сары, K-Black-қара) ауысу үшін келесі қатынас қолданылады.

K = min(C, M, Y),

C = CK,

M = MK,

Y = YK.

Бұл модель полиграфияда көп қолданылады.



RGB және CMYK модельдері нақты құрылғылармен нақты жұмыс істеуге ыңғайлы да, адамның көзі қабылдауға қолайсыз. Қолданылатын техникалық құралдарға тәуелсіз түсті көрсетудің бірнеше модельдері бар.

  • HSB – бұл модельде әрбір түс түстің тонымен (hue), түстің шымқайлығымен (Saturation, насышенность) және түстің ашықтығымен (Brightness, яркость) анықталады. Бұл модельмен программалар жұмыс істейді. Түстер әрі қарай экранға немесе принтерге шығару үшін RGB немесе CMYK моделіне келтіріледі.

  • HBW – бұл модельді ең қарапайым және түсінікті деп саналады. Бұл модель түстің тонын (hue)тандап, оған немесе ақшылдық (Whiteness) немесе қаралық (Blackness) қосуға негізделген.

  • HSV, HLS түстік модельдері тонның ашықтылығына және шымқайлылығына негізделген. HSV моделінде цилиндрлік координат жүйесі қолданылады.



HLS

Көбінесе түстерді сипаттау үшін бекітілген палитралар, яғни берілген түстер тізімі қолданылады. Палитралардың жиыны өте көп. Ең көп пайдаланылатыны, кең таралғаны PANTONE палитрасы. Палитраны қолдану жұмыс істеуді жеңілдетеді.


3. Графикалық файлдардың форматтары
Растрлік бейнелердің форматтары:

Интернетте веб-беттерде растрлық 2- формат кең таралған.

  • GIF – бұл формат мөлдір пикселдерді және анимацияны сақтауға мүмкін береді. Бұл форматта файлдар ақпараттарды толық сақтап, сығылған.

  • JPEC – файлдың кеңейтілуі .jpg . Бұл формат файлдың сығылу дәрежесін яғни, ақпарат жоғалу процентін көрсетуге мүмкіндік береді. Жоғалу проценті неғұрлым көп болса, солғұрлым файлдың көлемі кіші болады. 50% жоғалумен фотосуреттер интернетте қанағаттаңарлық түрде болады.



Тақырып: DELPHI-ДІҢ ГРАФИКАЛЫҚ МҮМКІНДІКТЕРІ
Жоспар

  1. Холст

  2. Canvas объектісі

  3. Қарындаш және қылқалам

  4. Мәтінді шығару

  5. Графикалық примитивтерді салу әдістері

  6. Биттік бейнелер

  7. Мультипликация

  8. Базалық нүкте әдісі

  9. Суреттерді шығару. IMAGE компоненті

  10. Shape компоненті




  1. Холст

Windows қосымшалары экранға немесе принтерге графикалық бейнелерді шығаруды GDI (Grafics Devices Interface) функциялары көмегімен жүзеге асырады.

Қосымшаның құрылғы драйверімен әрекеттестігі GDI функциялары қолданатын бейненің контексті деп аталатын арнайы берілгендер құрылымы арқылы жүзеге асады. Бейненің контексті шығару құрылғысының негізгі сипаттамаларынан және сурет салу саймандарынан тұрады. Бейненің контекстіне келесі саймандар жатады: шрифт, қалам (перо), қылқалам (кисть).

Delphi қасиеті программистке экранға графикалық бейнелерді шығаратын программаларды жасауға мүмкіндік береді.

Delphi ортасында графикалық құралдарды қолдануды жеңілдету үшін арнайы класстар бар. Олар:

TCanvas – бейненің контексті үшін

TFont – шрифт үшін

Tpen – қалам үшін

Tbrush – қылқалам үшін

TPicture – бейнелер үшін контейнер

TGraphic – графикалық объектілер үшін базалық класс

TBitmap – растрлік бейне

TIcon – шартбелгі (значок)

TMetaFile – метафайл

Осы кластарға байланысты объектілер барлық көрінетін элементтер үшін автоматты түрде құрылып, программада - canvas, font, pen және brush қасиеттері арқылы жүзеге асырылады.

Tcanvas класы әртүрлі құралдармен – қалам, қылқалам, шрифт – сурет салынатын кенепті құруға мүмкіндік береді. Tcanvas класының объектілері барлық көрінетін компонентер үшін автоматты түрде құрылады.

Tfont класының көмегімен кез келген графикалық құрылғы (экран, принтер, плоттер, және т.б.) үшін шрифт объектісі құрылады.

Tpen класының көмегімен сызықтарды сызуға арналған қалам объектісі құрылады.

Tbrush класының объектілер тұйық фигуралардың ішін толтыру қызметін атқарады.


2. Canvas объектісі
Программа графиканы объектінің (форма немесе Image компоненті) бетіне шығарады. Объектінің бетіне Сanvas қасиеті сәйкес келеді. Программа графиканы шығаратын беттерге Canvas қасиеті сәйкес. Canvas қасиеті—Tcanvas типті объект болады. Бұл типтің әдістері графикалық примитивтерді (нүктелерді, сызықтарды, шеңберлерді, тіктөртбұрыштарды және т.б.) шығаруды қамтамасыз етеді, ал қасиеттері шығарылатын графикалық примитивтердің сипаттамаларын: сызықтардың түсін, қалыңдығын және стилін, боялатын аймақтардың түсін және құю түрін, мәтіндік ақпарат шығарғандағы қаріптің сипаттамаларын анықтауға мүмкіндік береді.

Графикалық примитивтерді салу әдістері Canvas қасиетін сурет салуға болатын кейбір абстрактты холст деп қарастырады (canvas "бет", "сурет салу үшін арналған холст" деп аударылады). Холст жеке нүктелерден – пикселдерден – тұрады. Пикселдің орны оның көлденең (X) және тік (Y) координаталарымен анықталады. Жоғарғы сол жақтағы пикселдің координаталары (0, 0). Координаталар жоғарыдан төменге және солдан оңға қарай өзгереді. Холсттың оң жақ төменгі координаталар мәні холст көлеміне байланысты болады.

Холсттың көлемін бейне шығарылатын аймақтық (image) Height және width қасиеттері немесе форманың ClientHeight және Clientwidth қасиеттері арқылы анықтауға болады.


3. Қарындаш және қылқалам
Суретші өз жұмысында қарындаш пен қылқаламды қолданады. Холст бетінде графикалық примитивтерді салуды қамтамасыз ететін әдістер де қарындаш пен қылқаламды қолданады.

Холстта графиканы шығару үшін қолданылатын қарындаш және қылқаламға Реn (қалам) және Brush (қылқалам) қасиеттері сәйкес. Олар сәйкесінше TРеn және Tbrush типті объектілер болады. Бұл объектілер қасиеттерінің мәндері шығарылатын графикалық элементтердің түрін анықтайды.



Қарындаш. Қарындаш геометриялық фигуралардың (тіктөртбұрыш, шеңбер, эллипс, доға және т.б.) нүктелерін, сызықтарын және контурларын сызу үшін қолданылады. TРеn объектісінің қасиеттері 1 кестеде келтірілген.

1 кесте. TРеn объектісінің қасиеттері



Қасиет

Сипаттамасы

Color

Сызықтың түсі

Width

Сызықтың қалыңдығы

Style

Сызықтың түрі

Mode

Көрсету режимі

Color қасиеті қалам мен салынған сызықтың түсін анықтайды. Келесі кестеде Color қасиетінің мәні ретінде пайдалануға болатын белгілі тұрақтылар берілген.

2 кесте. Color қасиетінің мәндері

Тұрақты__Сызық_түрі'>Тұрақты__Түсі__Тұрақты__Түсі'>Тұрақты

Түсі

Тұрақты

Түсі

ClBlack

Қара

ClSilver

Күміс

ClMaroon

Каштан

ClRed

Қызыл

ClGreen

Жасыл

Clime

Салатты

ClOlive

Олив

ClBlue

Көк

ClNavy

Шымқай көк

ClFutshia

Ашық қызғылт

ClPurple

Қызғылт

ClAqua

Бирюзалы

ClTeal

Жасыл-көкшіл

ClWhite

Ақ

ClGray

Сұр








width қасиеті сызықтың қалыңдығын (пикселде) анықтайды. Мысалы, Canvas. Pen. width: =2 инструкциясы сызықтың қалыңдығы 2 пиксел деп орнатады.

style қасиеті сызықтың түрін (стилін) анықтайды. Сызық үздіксіз немесе штрихті бола алады. Пунктирлі сызықтың қалыңдығы 1 ден үлкен бола алмайды. Егер Pen.width қасиетінің мәні 1 ден үлкен болса, онда үздіксіз сызық салынады. 3 кестеде сызықтың стилін анықтайтын тұрақтылар келтірілген.

3 кесте. Style қасиетінің мәндері



Тұрақты

Сызық түрі

psSolid

Үздіксіз сызық

psDash

Пунктирлі сызық, ұзын штрихтар

psDot

Пунктирлі сызық, қысқа штрихтар

psDashDot

Пунктирлі сызық, ұзын және қысқа штрихтар кезектеседі

psDashDotDot

Пунктирлі сызық, бір ұзын және екі қысқа штрихтар кезектеседі

psClear

Сызық көрінбейді (аймақтық шекарасын жасыру қажет болғанда қолданылады)

Mode қасиеті сызықтың нүктелер түсін холст нүктелер түсіне байланысты анықтайды. Үнсіз келісім бойынша сызық Pen.Color қасиетінің мәні болатын түспен сызылады.

Бірақ, программист фон түсіне байланысты сызық түсін өзгерте алады. Төменгі кестеде Рen.Mode қасиетінің мәні ретінде қолданылатын тұрақтылар сипатталған.


Тұрақты

Сызық түсі

MpBlack

Қара, Рen.Color қасиетінің мәнінен тәуелсіз

MpWhite

Ақ , Рen.Color қасиетінің мәнінен тәуелсіз

MpCopy

Сызық түсі Рen.Color қасиетінің мәніне тәуелді

MpNotCopy

Сызық түсі Рen.Color қасиетінің мәніне инверсиялы

MpNot

Сызық түсі бет нүктелерінің түсіне инверсиялы


Қылқалам. Қылқалам (canvas.Brush) — контурмен шектелген аймақтарды бояу үшін қолданылады. Объект болғандықтан, қылқаламның 4 кестеде көрсетілгендей қасиеттері бар.

4 кесте . TBrush (қылқалам) объектісінің қасиеттері




Қасиет

Сипаттамасы

Color

Style


Тұйық аймақты бояу (құю) түсі

Аймақты құю стилі (типі)


Аймақты құю стилін анықтайтын Brush. style қасиетінің мәндері 5 кестеде келтірілген.


5 кесте. style қасиетінің мәндері


Тұрақты

Аймақты құю түрі

bsSolid

Бірыңғай құю

bsClear

Аймақ боялмайды

bsHorizontal

Көлденең штриховка

bsVertical

Тік штриховка

bsFDiagonal

Диагональды штриховка, сызықтар солға көлбеу

bsBDiagonal

Диагональды штриховка, сызықтар оңға көлбеу

bsCross

Көлденң-тік штриховка, торлы

bsDiagCross

Диагональдыная штриховка, торлы


2

1 сурет. Аймақты құю стильдері




4. Мәтінді шығару
Графикалық объектінің бетіне мәтінді шығару үшін TextOut әдісі қолданылады:

Объект.Canvas.TextOut(x, у, мәтін)

мұндағы:

объект — бетіне мәтін шығарылатын объектінің атауы;

х, у — мәтін шығарылуы басталатын графикалық бет нүктесінің координатасы;

мәтін — мәні шығарылатын мәтінді анықтайтын айнымалы немесе символдық типты тұрақты

Мәтінді шығару үшін қолданылатын қаріп сәйкес canvas объектісінің Font қасиетінің мәнімен анықталады. Font қасиеті TFont типті объект болады. Мәтінді шығару үшін TextOut әдісі қолданатын қаріптің сипаттамаларын орнататын TFont объектісінің қасиеттері 6 кестеде келтірілген.
6 кесте. Tfont объектісінің қасиеттері


Қасиет

Сипаттамасы

Name

Қолданылатын қаріп. Мәні ретінде қаріптің атауын көрсету қажет, мысалы, Arial

Size

Пунктпен (points) анықталатын қаріптің өлшемі. Пункт— полиграфияда қолданылатын қаріп өлшемін өлшеу бірлігі. Бір пункт 1/72 дюймге тең

Style

Символдардың жазылу стилі. Болуы мүмкін: нормальды, қарайтылған, курсив, асты сызылған, сызылған. Стиль келесі тұрақтылармен анықталады:

fsBold (қарайтылған)

fsltalic (курсив)

fsUnderline (асты сызылған)

fsStrikeOut (сызылған).

style қасиеті керекті стильдерді бірге қолдануға мүмкіндік беретін жиын болады. Мысалы, "қарайтылған курсив" стилін орнату үшін программа инструкциясы келесідей болады:

Объект. Canvas . Font : = [fsBold, fs Italic]


Color

Символдар түсі. Мәні ретінде Tcolor типті тұрақтыны қолдануға болады.

Ескерту!


Мәтінді шығару аймағы қылқаламның ағымдағы түсімен боялады. Сондықтан, мәтінді шығару алдында Brush.Color қасиетіне bsClear немесе мәтін шығарылатын беттің түсіне сәйкес қылқалам түсінің мәнін меншіктеу қажет.

Textout әдісімен мәтін шығарылған соң шығару нұсқағышы (қарындаш) мәтінді шығару аймағының жоғарғы оң жақ бұрышына орналасады.

Мәтіннің жоғарғы оң жақ бұрышының координаталарын анықтау үшін PenPos қасиетін қолдану керек.

Программаның келесі фрагменті TextOut функциясының қолданылуын көрсетеді.

With Form1.Сanvas do

Begin


Font.Name:=’Tahoma’;

Font.Size:=20;

Font.Style:=[fsItalic,fsBold];

TextOut(10,10’Borland Delphi 7’);

End;
5. Графикалық примитивтерді салу әдістері

Суретші өз жұмысында қарындаш пен қылқаламды қолданады. Холст бетінде графикалық примитивтерді салуды қамтамасыз ететін әдістер де қарындаш пен қылқаламды қолданады.

Холстта графиканы шығару үшін қолданылатын қарындаш және қылқаламға Реn (қалам) және Brush (қылқалам) қасиеттері сәйкес. Олар сәйкесінше TРеn және Tbrush типті объектілер болады. Бұл объектілер қасиеттерінің мәндері шығарылатын графикалық элементтердің түрін анықтайды.

Қарындаш. Қарындаш геометриялық фигуралардың (тіктөртбұрыш, шеңбер, эллипс, доға және т.б.) нүктелерін, сызықтарын және контурларын сызу үшін қолданылады. TРеn объектісінің қасиеттері 1 кестеде келтірілгенқалыңдығы және стилі) Реn объектісі қасиеттерінің мәндерімен анықталады.

Сынық сызық. polyline әдісі сынық сызық сызу үшін қолданылады. Параметр ретінде әдіс TPoint типті массивті алады. Массивтің әр бір элементі х және у өрістері сынық төбелерінің координаталарын сақтайтын жазба болады.

Polyline әдісін тұйық контурларды сызу үшін қолдануға болады. Ол үшін массивтің бірінші және соңғы элементтеріне бір нүктенің координаталары сақталуы тиіс.



Қисық, сызық. PolyBezier әдісі қисық сызық сызады. Әдістің параметрі ретінде Tpoint типті массив алынады. Массивтің әрбір 3*k+1 элементінің х және у өрістері қисық сызық өтетін нүктелердің координаталарын, ал 3*k+2 және 3*(k+1) элементтерінің х және у өрістері қисық сызықтың түрін анықтайтын бақылау нүктелердің координаталарын сақтайтын жазба болады.

Қисық сызық шекарасының түсі, қалыңдығы және стилі Реn қасиетінің мәндерімен анықталады.



Шеңбер және эллипс. Ellipse әдісі параметрлер мәндері байланысты эллипс немесе шеңбер салады. Әдісті шақыру нұсқасының жалпы түрі келесідей болады:

Объект.Canvas.Ellipse(x1,y1, х2,у2)

мұндағы:

объект — сызу жүргізілетін бет объектісінің (компоненттің) атауы;

x1, y1, х2, у2 — эллипс немесе шеңберді шектейтін тіктөртбұрыштың немесе шаршының координаталары.

Эллипс сызығының түсі, қалыңдығы және стилі Реn объектісі қасиеттерінің мәндерімен, ал эллипс ішіндегі аймақты бояу түсі мен стилі — шығару жүргізілетін беттің (canvas) Brush қасиетінің мәндерімен анықталады.


7a
2 сурет. Arc әдісінің доғаны эллипс (шеңбер) бөлігі деп анықтайтын параметрлерінің мәндері

Доға. Доға салу үшін Arc әдісі қолданылады. Әдісті шақыру нұсқасының жалпы түрі келесідей болады:

Объект.Canvas.Arc(x1,y1,х2,у2,х3,у3,х4,у4)

мұндағы:

x1, y1, х2, у2 — сызылатын доға бөлігін анықтайтын эллипстің (шеңбердің) параметрлері;

х3, у3 — доғаның бастапқы нүктесін анықтайтын параметрлер;

х4, у4 — доғаның соңғы нүктесін анықтайтын параметрлер.

Бастапқы (соңғы) нүкте — бұл эллипс шекарасымен эллипс ортасынан координаталары х3 және у3 (х4 және у4) нүктесіне жүргізілген түзумен қиылысу нүктесі. Доға бастапқы нүктеден бастап соңғы нүктеге дейін сағат тілі бағытына қарсы сызылады (2 сурет).

Доға сызылатын сызықтың түсі, қалыңдығы және стилі доға сызылатын беттің Реn қасиетінің мәндерімен анықталады.



Тіктөртбұрыш. Тіктөртбұрыш Rectangle әдісі көмегімен салынады. Әдісті шақыру нұсқасының жалпы түрі келесідей болады:

Объект.Canvas.Rectangle(x1, y1,x2, y2)

мұндағы:

объект — сызу жүргізілетін бет объектісінің (компоненттің) атауы;

x1, y1 және х2, у2 — тіктөртбұрыштың сол жақ жоғарғы және оң жақ төменгі төбелерінің координаталары.

RoundRec әдісі де тіктөртбұрыш салады, тек оның бұрыштары домаланған. RoundRec әдісін шақыру нұсқасы:

Объект.Canvas.RoundRec(x1,y1,х2, у2, х3, у3)

мұндағы:


x1, y1, х2, у2 – бұрыштары домаланған тіктөртбұрышты шектейтін тіктөртбұрыштың сол жақ жоғарғы және оң жақ төменгі төбелерінің координаталары;

х3 және у3 — төрттен бір бөлігі бұрыштары домаланған төртбұрышты сызу үшін қолданылатын эллипстің көлемі (3 сурет).


8
3 сурет. Бұрыштары домаланған тіктөртбұрыш сызатын RoundRec әдісінің параметрлері

Контурдың түсі, қалыңдығы және стилі Реn объектісі қасиеттерінің мәндерімен, ал тіктөртбұрыш ішіндегі аймақты бояу түсі мен стилі — шығару жүргізілетін беттің (canvas) Brush қасиетінің мәндерімен анықталады.

Тіктөртбұрыш салатын тағы да екі әдіс бар: FillRect әдісі іші боялған тіктөртбұрыш салады, ал FrameRect әдісі — тек контурды салады. Осы әдістердің әр қайсысының тек бір параметрі бар —TRect типті құрылым. TRect құрылымының өрістері тікбұрышты аймақтың координаталарынан тұрады, олар Rect функциясының көмегімен толтырылуы мүмкін.

Көпбұрыш. Polygon әдісі көпбұрыш сызады. Әдістің параметрі ретінде Tpoint типті массив алынады. Массивтің әрбір элементі х және у өрістері көпбұрыш төбелерінің координаталарын сақтайтын жазба болады. Polygon әдісі біртіндеп координаталары массивте сақталған бірінші нүктені екінші нүктемен, екінші нүктені үшінші нүктемен және т.с.с. түзу сызықпен қосады. Сонан соң соңғы және бірінші нүкте қосылады.

Көпбұрыш шекарасының түсі, қалыңдығы және стилі Реn қасиетінің мәндерімен, ал көпбұрыш ішіндегі аймақты бояу түсі мен стилі — шығару жүргізілетін беттің (canvas) Brush қасиетінің мәндерімен анықталады.



Сектор. pie әдісі эллипса немесе дөңгелек секторын салады. Әдісті шақыру нұсқасының жалпы түрі келесідей болады:

Объект. Canvas.Pie(x1,y1,x2,y2,х3,у3,х4,у4)

мұндағы:

x1, y1, х2, у2 — сектор бөлігі болатын эллипсті (шеңберді) анықтайтын параметрлер;

х3, у3, х4, у4 — сектордың шекарасы болатын түзулер ұштарының координаталарын анықтайтын параметрлер.

Түзулердің бастапқы нүктелері эллипс (шеңбер) ортасымен бір. Сектор координаталары (х3, у3) нүктесімен анықталған түзуден бастап координаталары (х4, у4) нүктесімен анықталған түзуге дейін сағат тілі бағытына қарсы салынады.



Нүкте. Программа графика шығара алатын бет Canvas объектісіне сәйкес. TColor типті екіөлшемді массив болатын pixels қасиеті графикалық беттің әрбір нүктесінің түсі туралы ақпаратты сақтайды. Используя қасиет Pixels қасиетін қолданып графикалық беттің кез келген нүктесі үшін керекті түсті орнатуға болады. Мысалы, келесі нұсқа

Form1.Canvas.Pixels[10,10]:=clRed

форма бетінің нүктесін қызыл түске бояйды.

pixels массивінің өлшемі графикалық беттің өлшемімен анықталады.. Форманың графикалық бетінің (жұмыс аймағы, клиенттік деп те атайды) өлшемі Clientwidth және ClientHeight қасиеттерінің мәндерімен, ал image графикалық беттің көлемі —width және Height қасиеттерінің мәндерімен анықталады. Форманың жұмыс аймағының сол жақ жоғарғы нүктесіне pixels [0,0] элементі, ал оң жақ төменгі нүктесіне – Pixels[Ciientwidth - 1, ClientHeight - 1] элементі сәйкес болады.

Pixels қасиетін функциялардың графиктерін салу үшін қолдануға болады.

6. Биттік бейнелер

Графикамен жұмыс істегенде TBitMap (биттік бейне) типті объектілерді қолданған ыңғайлы. Биттік бейне компьютер жадында орналасады да көрінбейтін графикалық бет болады. Биттік бейнені (суретті) жеңіл және жылдам форманың немесе image шығару аймағының бетіне шығаруға болады. Сондықтан, биттік бейнелерді әдетте аз көлемді бейнелерді, мысалы, командалық батырмалар суреттерін, сақтау үшін қолданады.

Биттік бейнеге керекті суретті жүктеу үшін LoadFromFile әдісін қолдануға болады. Әдістің параметрі ретінде керекті сурет сақталған BMP-файлының атауын көрсету қажет.

Биттік бейнені (суретті) форма немесе иллюстрацияны шығару бетіне шығару үшін Draw әдісін беттің сәйкес қасиетіне қолдануға болады. Мысалы, келесі нұсқа

Image1.Canvas.Draw(x,у, bm)

bm биттік бейненің суреттін image1 компонентінің бетіне шығарады (х және у параметрлері компонент бетіндегі суреттің сол жақ жоғарғы бұрышының координаталарын анықтайды).



Тақырып. растрлық және векторлық графика



  1   2   3   4   5   6   7


©stom.tilimen.org 2017
әкімшілігінің қараңыз

    Басты бет