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



бет4/30
Дата08.09.2017
өлшемі4 Mb.
#30454
1   2   3   4   5   6   7   8   9   ...   30

3.Біртекті координаттар

Матрицалық формада жылжыту, масштабтау және бұру түрлендірулері келесідей жазылады.



-жылжыту,

-масштабтау,

-бұру.

Жылжытудың масштабтау мен бұрудан айырмашылығы , жылжыту қосу операциясы көмегімен жүзеге асады. Осы түрлендіруді бір түрде, яғни матрицаларды көбейту көмегімен көрсеткен ыңғайлы болады. Мұны нүктелерінің векторларына 3 координата енгізу арқылы шешуге болады. Яғни, нүктелер векторларының түрі және түрінде болады. Нәтижесінде түрлендіру матрицасының көлемі 3х2 болады:



Сонда


Осыдан, m және n тұрақтылары х және у бойынша х* және у* ауытқу тудырады. 3х2 матрицасы квадратты емес болғандықтан, оның кері матрицасы жоқ. Бұл қиындықты түрлендіру матрицасын 3х3 матрицасына толықтыру арқылы шешуге болады. Мысалы,



.

Қатынаста осы матрицаны қолданып, түрлендірілген векторын аламыз. Сонымен [х у 1] векторы 3х3 матрицасына көбейту нәтижесінде жалпы жағдайда [X Y Н] векторына әкеледі.

3 өлшемді кеңістіктегі түрлендіру біздің жағдайда жазықтықпен шектелген, өйткені H = 1. Бірақ, егерде түрлендіру матрицасының 3 бағаны нөлден өзге болса, яғни:

түрлендіру нәтижесінде [х у 1] =[Х Y Н], мұндағы Н  1.



Түрлендіру нәтижесі келесі суретте көрсетілген.

3 сурет. Біртекті координаттардың геометриялық көрсетілуі

Ұқсас үшбұрыштарды қарастырсақ



.

Осыдан былай жазуға болады:



.

Екіөлшемді векторды үшөлшемді вектормен немесе жалпы жағдайда п өлшемді векторды п+1 өлшемді вектормен түрлендіру біртекті координаттық көрсету деп аталады. п өлшемді векторды біртекті координаттық көрсету п+1 өлшемді кеңістікте жүргізіледі. Сонымен, 2-өлшемді [х у] векторы 3 компонентті векторымен көрсетеді. Вектордың компоненттерін h біртекті координатасына бөліп, аламыз:



, .

Екі өлшемді кеңістікте нүктенің біртекті координаттық түрлендіруі жалғыз емес. Мысалы: (12, 8, 4), (6, 4, 2) (3, 2, 1) бастапқы [3 2] нүктесін көрсетеді. Есептеулер қарапайымдылығы үшін [х у 1] деп аламыз.



Сонда түрлендірілуі біртекті координаттарда келесі түрде беріледі.

.

Жоғарыда келтірілген түрлендірулерді орындау Х = х*, Y = у*, ал Н = 1 екенін көрсетеді.

Жалпы жағдайда Н 1, түрлендірілген координаттар біртекті координаттарды нормализациялау арқылы алынады, яғни

, .

Нормализациялаудан кейін барлық геометриялық түрлендірулер Н = 1 жазықтығында жүргізіледі.

Біртекті координаттарды енгізудің артықшылығы түрлендіру матрицасының жалпы түрін пайдаланғанда байқалады:

Бұл матрица көмегімен басқа да түрлендірулерді орындауға болады.

Түрлендіру матрицасының 3 бағанның әсерін көру үшін келесі операцияны қарастырайық.

,

мұндағы Х = х, Y = у, Н = рх + qy + 1.

Түрлендірілген нүктелер арқылы жүргізілген жазықтық Н айнымалысымен анықталады.

Нормализацияны орындайық:



,



р = q = 1 деп алып, суретте бейнеленген А(1,3) және В(4,1) нүктелері үшін аламыз

,

А ны С*-ға, В ны D*-ға түрлендірген соң



,

С* және D* нүктелерінің біртекті координаттары сәйкесінше және болады.

Нормализациялау нәтижесінде CD сызығы Н = 1 жазықтықтарындағы C*D* сызығына проекцияланады. Проекцияның ортасы координаттар басы болады.

Екіөлшемді біртекті координаттар үшін 3х3 негізгі түрлендіру матрицасы 4 бөлікке бөлінуі мүмкін:



.

а, b, с , d масштабтың өзгеруін, жылжытуды және бұруды жүзеге асырады; т және п ауытқуды орындайды; р және q — проекцияларды береді; s – масштабты толық өзгертеді. Мұны көру үшін келесі түрлендіруді қарастырайық:

,

мұндағы Х = х, Y = у, ал Н = s; сода х* = x/s және y* = y/s.

[х у 1 ] -> [x/s y/s 1] түрлендіру нәтижесінде вектордың масштабы біртекті өзгереді. Егер s < 1 болса, онда масштаб үлкейеді, ал s > 1 болса, онда масштаб кішірейеді.



Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   ...   30




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет