Лекция жоспары: КГ-нiң рөлi. Машиналық графика түсiнiгi және оның аппараттық
қамсыздандырылуы. Turbo Pascal7. Graph модулiн қолдану. Кесiндi тұрғызу алгоритмiн зерттеу және жүзеге асыру. ЦДА алгоритмi. Робертс және Брезенхем алгоритмi. Шеңбер тұрғызу алгоритмiн зерттеу және жүзеге асыру. Тегiс облыстарды толтыру алгоритмiн зерттеу және жүзеге асыру. Екі өлшемді, үш өлшемді өзгертулер және проекциялар.
Лекция мақсаты: Машиналық графика туралы түсінік беру. ЦДА, Робертс және Брезенхем алгоритмi мен танысу. Екі өлшемді, үш өлшемді өзгертулер және проекциялар-мен танысу.
Лекция мазмұны: Кескiннiң берiлуiне байланысты компьютерлiк графика үшке бөлiнедi: растрлық, векторлық және фрактальдық.
Фрактальдық графика.
Фрактальды графика математикалық есептеулер жолымен бейнелердi автоматты түрде түрлендiруге негiзделген. Теңдеулер немесе формулалар бойынша бейнелер салынады және олардың бейнелерi емес, коэффициенттерi сақталынады. Мысал ретiнде ақша қардың бейнесiн алуға болады.
Фрактальдық графиканың негiзгi элементтнрi математикалық формула, яғни компьютердiң жадында мәлiметтер сақталмайды, суреттер математикалық формулалармен құрылады. Қарапайым құрылымдар және күрделi суреттер, табиғат ландшафтары сонымен қатар үш өлшемдi объектiлер арнайы әдiс бойынша құрылады.
1.2. Растрлi графика. Растрлық графика полиграфиялық баспалар мен оларды өңдеу үшiн қолданылады. Ең бастысы бұл графикада түстi таңдап алу болып табылады. Мұндай типтегi бейнелердi үлкейткен кезде оның сапасы төмендеп, бейнеге айналып кетедi. Растрлi бейнелер нүктелерден тұрады. µзындақ бiрлiгiне сәйкес келетiн нүктелер саны графиканың бұл түрiнде еркше роль атқарады. Осы нүктелер саны бейненiң анықтығын көрсетедi. Анықтақтың келесi түрлерi бар:
Оригиналдық анықтығы;
Экрандағы бейненiң анықтығы;
Көшiрiлген бейненiң анықтығы;
1.3. Векторлық графика. Векторлық графика сызба бейнелер мен безендiрулердi құруға негiзделген. Ең бастысы, бұл графикада объектiлер формасы болып табылады. Оны үлкейткен кезде оның формасы өзгермейдi. Керiсiнше, векторлық бейнелердi үлкейткен кезде, олардың өлшемi өзгермейдi.
Егер растрлi графикада негiзгi элемент нүкте болса, векторлық графикада ол сызық болып табылады. Сызықтар мұнда бiр математикалық бiрiлiк ретiнде есептелiнедi, сондақтан растрлi графикадан анағұрлым аз мәлiмет қоры болады.
1.4Үш өлшемдi графика. Үш өлшемдi (3D) графика – объектiлердiң кеңiстiкте берiлуiнiң әдiстерi. Оның құрамына кескiндердiң векторлық және растрлық түрде берiлуi де кiредi. Түстiк ерекшелiктерiне байланысты ақ-қара және түрлi-түстi графика ұғымдары қалыптасқан. Кейбiр мамандық шеңберiнде инженерлiк графика, ғылыми графика, Web-графика, компьютерлiк томографика т.б. ұғымдар бар. Ғылыми есептеулер, инженерлiк жоспар құру, физикалық объектiлердi компьютерлiк моделдеу мәселелерiнде үш өлшемдi графика кеңiнен қолданылады.
Нақты физикалық дененi қозғалту мәселесiн мысал ретiнде қарастырайық.
Объектiнi кеңiстiк моделiн алуды жеңiлдету мақсатында керектiлер:
Нақты тұлғасына жақын етiп объектiнiң көрнекi каркасын (қаңқасын) құру және жобалау;
Нақты тұлғасына суреттеудiң физикалық құрылымы арқылы толық жақын етiп көрнекi материалдар құру және жобалау;
Объектiнiң бетiн бөлшектерге бөлiп, оларға жеке материал ретiнде қарау (басқаша айтқанда объектiнiң текстурасын жасау);
Объектiнiң қозғалысын кеңiстiгiн ретке келтiру, яғни жарықтандыру, гравитация, атмосфера сипаты өзара әсерлесушi объектiлердi және бедерлердi сипаттау;
Объектiнiң қозғалысының траекториясын көрсету;
Кадрдың соңғы бөлiгiе есептеу;
Қосымша эффектiлердi соңғы анимациялық роликке араластыру;
Объектiнiң нақты моделiн алу үшiн геометриялық қарапайым фигуралар ( оларды геометриялық примитивтер деп атайды, яғни тiктөртбұрыш, куб, шар, конус т.б.) және геометриялық тегiстелген бет пайдаланылады (сплайынды бет).
Объектiнiң “қаңқасын” жасағаннан кейiн бетiн материалдармен қаптау керек. Компьютерлiк моделдеудегi көптеген амалдар негiзiнен осы бетiн қаптаудағы көрiнiсiн көрнекi етуге жұмылдырылады, яғни жарықтандыру коэффиценттiн есептеу, жарық сәулесiнiң сыну бұрышын анықтау, материал бетiндегi және кеңiстiктегi көлеңкелердi табуда қателеспеу.
Ендi бiз қапталған беттi бояуымыз керек. Бұл жерде Гуро (Gouraud) немесе Фонга (Phong) әдiсi пайдаланылады. Бiрiншi әдiсте примитивтердi бояған кезде олардың ұштарын бояйды да төменгi жағы бiртiндеп интерполяцияланады. Екiншi әдiс бойынша объектiнiң жалпы нормалi құрылады да объектiнiң бетiне байланысты интерполяцияланады және әр нүктенi жекеше жарықтандырады.
Ендi келесi мәселе объект каркасының жеке бөлiктерiнiң текстурасн орнату. Бұл жерде примитивтердiң шекарасындағы текстуралардың өзара байланыстарын ескеру қажет. Материалдан объект жасап шығару қиын жұмыс. Оны жасап шығару үшiн сурет салу процестерiн жүргiзе білу және аз да болса дарын қажет. Объектiнi құрастырып, оы көрнекi еткеннен кейiн оны қимылдату жұмыстары басталады. Негiзгi кадрлер компьютерлiк анимацияланады Объектiнiң бастапқы қалпы бiрiншi кадрге түседi.
Каркасты модел жасалынады. Одан әрi қарай модел көрнекi текстуралық қабатпен безендiрiледi (ол жерде жарықтандыру шарттары орындалады).
Қазiргi таңда үш өлшемдi модельдеу тренажорларда кеңiнен пайдаланылады. Мысалы, машиналар, кемелер, ұшу аппараттар, космостық аппараттарын пайдалануды үйренуге арналған тренажерлар. Бұл тренажерларда объектiнiң техникалық мүмкiндiктерi мен қоршаған ортаның физикалық қасиеттерiн толық көрсету қажет. Жол транспорттарын айдауды үйренуге арналған тренажерларды персональдi компьютерге орнатады.
Қазiргi таңда космос кемелерiн және әуе машиналарын үйренуге арналған аса күрделi тренажерлар пайдаланылады. Мүндай тренажерлардағы объектiлердi көрнекiлеу мен модельдеуде күрделi қондырғылар пайдаланылады, яғни бiрнеше арнайы графикалық станциялар орнатылған аса күштi RISC-процессорлар және үш өлшемдi графикан үдеткiш орнатылған жылдам жұмыс iстейтiн видеоадаптерлер.