7. Мультипликация
Мультипликация деп әдетте жылжитын және өзгеретін сурет түсініледі. Қарапайым жағдайда сурет тек қозғалуы немесе өзгеруі мүмкін.
Анимациялық алгоритмдер өте көп. Қарапайым анимациялық алгоритм келесі қадамдардан тұрады:
Белгілі түсті бейне салынады.
Сол бейне фон түсімен салынады, яғни «жоғалады».
Бейне бастапқа түспен басқа орында салынады.
8. Базалық нүкте әдісі
Элементтер жиынынан құралатын күрделі бейнелерді программалауда базалық нүкте әдісі деп аталатын әдіс қолданылады. Бұл әдістің алгоритмі келесідей:
1. Бейненің қандай да бір нүктесі таңдалады. Бұл нүкте базалық нүкте деп есептеледі.
2. Басқа нүктелердің координаталары осы базалық нүктеден есептеледі.
3. Егер бейне нүктелерінің координаталарын базалық нүктеден пикселде емес салыстырмалы бірлікте есептесе, бейнені масштабтауға болады.
9. Суреттерді шығару. image компоненті
Кеңейтілуі bmp, jpg немесе ico болатын файлдарда сақталған суреттерді , image компоненті көмегімен шығаруға болады. image компонентінің белгішесі компоненттер палитрасының Additional бетпарағында орналасқан.
7 кестеде image компонентінің негізгі қасиеттері келтірілген.
7 кесте. image компонентінің негізгі қасиеттері
Қасиет
|
Сипаттамасы
|
Picture
|
Компонент өрісінде көрсетілетін сурет
|
Width, Height
|
Компоненттің көлемі. Егер компоненттің көлемі суреттің көлемінен кіші болса, және де AutoSize және strech қасиеттерінің мәні False болса, онда суреттің бөлігі ғана көрінеді
|
AutoSize
|
Суреттің шынай көлеміне сәйкес компоненттің көлемін автоматты түрде өзгерту белгісі
|
Strech
|
Компоненттің шынайы көлеміне сәйкес суретті автоматты түрде масштабтау белгісі. Масштабтау жүргізілу үшін AutoSize қасиетінің мәні False болуы тиіс
|
Visible
|
Компонент және сәйкесінші сурет форма бетінде көрінетінің/көрінбейтінің анықтайды
|
image компонентінің өрісінде шығарылатын бейнені қосымшаның формасын құру барысында да программа орындалу барысында да орнатуға болады.
Форманы құру барысында суретті анықтау үшін picture қасиетінің мәнін орнату керек. Файлды таңдау үшін Picture Editor терезесінің Load командалық батырмасын шертіп, ашылған сұхбат терезеде picture қасиетінің мәні ретінде керекті графикалық файлдың атауын көрсету қажет. Image Editor-ді іске қосу үшін Object Inspector терезесінде Picture қасиетін таңдап, үш нүктелі батырманы шерту жеткілікті.
Егер суреттің көлемі компоненттің көлемінен үлкен болса, онда strech қасиетіне True мәнін меншіктеу қажет және де width және Height қасиеттерінің мәндерін суреттің шынайы көлеміне пропорционал орнату қажет.
image компонентінің өрісіне бейнені программа орындалу барысында шығару үшін Picture қасиетіне LoadFromFile әдісін қолдану қажет. Қасиеттің параметрі ретінде сурет сақталған файлдың атауын көрсету қажет. Мысалы, келесі нұсқа
Form1.Image1.Picture.LoadFromFile('e:\temp\bart.bmp')
bart.bmp файлындағы суретті image компонентінің шығару өрісіне жүктейді.
LoadFromFile әдісі түрлі графикалық форматтардағы: BMP, WMF, JPEG (кеңейтілуі jpg файлдар) суреттерді шығаруға мүмкіндік береді.
Жүктелген суреттің көлемін Form1.Image1.Picture.Width және Form1.Image1.Picture.Height қасиеттерінің көмегімен білуге болады. Олардың мәндері Image компонентінің көлемінен тәуелсіз болады.
10. Shape компоненті
Shape компоненті геометриялық фигураларды салу үшін қолданылады. Бұл компонент көрсететін фигураның түрі Shape қасиетімен анықталады. Shape қасиетінің қабылдай алатын мәндері:
stCircle шеңбер
stEllipse эллипс
stRectangle тіктөртбұрыш
stRoundRec бұрыштары домаланған тіктөртбұрыш
stRoundSquare бұрыштары домаланған шаршы
stSquare шаршы
Фигураның түсі мен бояу стилі Реn және Brush қасиеттерімен анықталады.
Тақырып: КОМПЬЮТЕРЛІК ГЕОМЕТРИЯ
Жоспар
Екіөлшемді түрлендірулер
Бірлік квадратты түрлендіру
Біртекті координаттар
Кез-келген ось айналасында екіөлшемді айналу
1. Екіөлшемді түрлендірулер
Жазықтықта нүктелер екі координатасымен анықталады екені белгілі. Сондықтан, әр бір нүкте таңдалған координат жүйесіне байланысты вектордың координат мәндерімен анықталады. Нүктелер координаталарын матрицасының элементтері түрінде қарастыруға болады, яғни вектор-жол немесе вектор-бағана түрінде. Осы нүктелердің орналасуын матрицаны түрлендіру арқылы басқаруға болады.
жазықтығында нүктені жаңа орынға ауыстыру үшін осы нүктенің координаталарына ауысу тұрақтысын қосу қажет:
Сонымен, жазықтықта нүктені жылжыту (орын ауыстыру) үшін оның координаталар матрицасына түрлендіру коэффициенттерінен құрылған матрицаны қосу қажет.
Р нүктесін анықтайтын матрицаны жалпы 2х2 түрлендіру мтарицасына көбейту нәтижесін қарастырайық:
Дербес жағдайларды қарастырайық:
a = d = 1 және c = b = 0.
Бұл жағдайда Р нүктесінің координаталары өзгермейді.
d = 1, b = c = 0, a = const
х*=ах болғандықтан х бағытында масштаб өзгереді. Сонымен, бұл матрицалық түрлендіру Р нүктесін х бағытында жылжытуға эквивалентті.
b = c = 0, a = const, d = const,
x және y бағытында масштаб өзгереді. Егер a<>d болса, онда масштаб пропорционалды емес өзгереді, ал a = d болса, онда пропорционал өзгереді.
a , d >1 болса, Р нүктесінің координаттар масштабы үлкейеді;
0 < a, d <1 болса, Р нүктесінің координаттар масштабы кішірейеді;
Егер a және (немесе) d < 0 болса, онда нүкте координаталары бейнеленеді:
а) b = c = 0, a = -1, d =1 болсын.
Онда
Р нүктесі y осі бойынша бейнеленеді.
б) b = c = 0, a = 1, d =-1 болсын.
Онда Р нүктесі х осі бойынша бейнеленеді.
в) b = c = 0, a = d < 0 болса, онда Р нүктесі координат басы бойынша бейнеленеді.
Ескерту: Бейнелеуді және масштабты өзгертуді матрицасының тек диагональді элементтері тудырады.
a = d = 1, с = 0, b = const
Р нүктесінің х координатасы өзгермейді, ал у* координатасы бастапқы координатадан сызықты тәуелді болады. Бұл эффект жылжыту (сдвиг) деп аталады. Сәйкешінде, егер a = d = 1, b = 0, с = const болса, у координатасы өзгереді, х координатасы бойынша жылжыту жүргізіледі.
Координат басына қолданған жалпы түрлендіру (0,0) нүктесінің координаталарын өзгертпейді.
Егер жалпы түрлендірулерді әртүрлі геометриялық фигураларға қолданса, онда параллель түзулер параллель түзулерге, кесіндінің ортасы – кесіндінің ортасына, параллелограмм – параллелограммға, екі сызықтың қиылысу нүктесі – түрлендірілген екі сызықтың қиылысу нүктесіне түрленетінін байқауға болады.
2. Бірлік квадратты түрлендіру
Бір төбесі коорданат басында орналасқан бірлік шаршының төрт нүктесіне сәйкес векторлары келесідей болады:
1 сурет. Бірлік шаршыны түрлендіру
Жалпы матрицалық түрлендіруді бірлік шаршыға қолданайық:
.
Алынған қатынастан В* нүктесінің координаталары түрлендіру матрицасының бірінші жолымен, ал D* нүктесінің координаталары түрлендіру матрицасының екінші жолымен анықталатыны байқалады. Сонымен, егер В* және D* нүктелерінің координаталары белгілі болса, онда түрлендірудің жалпы матрицасы анықталған болады. Осы қасиетті кез-келген бұрышқа айналдыру матрицасын табу үшін қолдануға болады.
Координат басы бойынша фигураны айналдыратын 2х2 жалпы матрицасын бірлік шаршыны координат басы бойынша бұруын қарастырудан табуға болады.
2 сурет. Бірлік шаршыны бұру
2 суреттен, координатасы (1,0) В нүктесі координаталары х*=(1)cos және y=(1)sin болатын В* нүктесіне, ал координатасы (0,1) D нүктесі координаталары x*=(-1)sin және y*=(1)cos болатын D* нүктесіне ауысады.
Түрлендіру матрицасының жалпы түрі келесідей жазылады:
.
Дербес жағдайлар:
- 900 – қа бұру;
- 1800– қа бұру.
у = х сызығы бойынша айналдыру матрицасы:
х = 0 осі бойынша айналдыру матрицасы:
.
у = 0 осі бойынша айналдыру матрицасы:
.
1>
Достарыңызбен бөлісу: |