Системи координат: світового, об'єктна, спостерігача й екранна
Однієї з розповсюджених завдань комп'ютерної графіки є зображення двовимірних графіків у деякій системі координат. Ці графіки призначені для відображення залежності між змінними, заданої за допомогою функції. Наприклад, у другому розділі справжнього курсу наведений ряд графіків, що характеризують сприйняття світла оком людини. Щоб одержати такий графік, прикладна програма повинна описати різні вихідні примітиви (крапки, лінії, ланцюжка символів), указавши їхнє місце розташування й розміри в прямокутній системі координат. Одиниці виміру, у яких задаються ці об'єкти, залежать від їхньої природи: зміна температури, наприклад, можна відображати в градусах за годину, переміщення тіла в просторі - у кілометрах у секунду, і т.д. Ці прикладні (або орієнтовані на користувача) координати дозволяють задавати об'єкти у двовимірному або тривимірному світі користувача, і їх прийнято називати світовими координатами.
Зображення тривимірних об'єктів сполучено із цілим рядом завдань. Насамперед треба пам'ятати, що зображення є плоским, тому треба домогтися адекватної передачі візуальних властивостей предметів, дати досить наочне подання про глибину. Надалі групи тривимірних об'єктів, призначених для зображення, будемо називати просторовою сценою, а її двовимірне зображення - образом.
Рис. 5.3. Об'єктна система координат і система координат спостерігача
Як і у випадку із двовимірними об'єктами, першим кроком побудови є уведення інформації про об'єкти. Сцена займає якесь певне місце в просторі, а її опис прив'язуєтьсядо тривимірного декартовой системі координат, пов'язаної з нею, - об'єктній координатній системі. Координати об'єктів, що становлять сцену, визначаються на основі їхніх реальних розмірів і взаємного розташування. Залежно від крапки, з якої розглядається сцена, можна одержати безліч різних її образів. Якщо побудовано досить багато таких образів, то по них можна відновити об'ємну структуру предмета. Вибір крапки й напрямку зору теж можна описати математично, увівши декартову систему координат спостерігача, початок який перебуває в крапці огляду, а одна з осей збігається з напрямком зору (мал. 5.3). Перехід від об'єктних координат до координат спостерігача математично реалізується так, як це було описано в третьому розділі. На цьому етапі перетворень зберігаються реальні розміри об'єктів.
Видимий образ формується на деякій площині, що надалі будемо називати картинною площиною. Способи перетворення тривимірного об'єкта у двовимірний образ (проекції) можуть бути різними. Так чи інакше, але отриманий образ також повинен бути описаний у деякій двовимірній системі координат. Залежно від способу його одержання реальні розміри образи також можуть бути різні. Різні види проектування будуть докладно розглянуті в наступних главах.
Рис. 5.4. Картинна площина й екран
Оскільки нашою кінцевою метою є одержання зображення на екрані, то перенесення образа супроводжується зміною масштабу відповідно до розмірів екрана. Звичайно початком координат у системі координат образа вважається лівий нижній кут аркуша із зображенням. На екрані дисплея початок координат традиційно перебуває в лівому верхньому куті. Відображення малюнка з картинної площини на екран повинне вироблятися з мінімальним перекручуванням пропорцій, що саме по собі вносить обмеження на область екрана, займану малюнком. Зміна масштабу повинне здійснюватися зі збереженням пропорцій області (мал. 5.4).
Об'єкти в системі координат картинної площини задаються в яких- або одиницях виміру, причому масштаб однаковий по обох осях координат. На екрані одиницею виміру є піксель, якому варто розглядати як прямокутний, тому масштаби по горизонтальній і вертикальній осях можуть бути різні, що необхідно враховувати при завданні коефіцієнтів масштабування.
Розглянемо ситуацію, коли зображення займає на картинній площині прямокутну область . При відображенні малюнка на екран кожна крапка вихідного прямокутника з координатами перейде в деяку крапку із цілочисловими координатами . Уведемо позначення:
(передбачається, що зображення займе на екрані прямокутник ). Визначимо перетворення координат образа в екранні координати формулами
Ясно, що при такому відображенні прямокутна область образа в точності перейде у відповідний екранний прямокутник, як показано на малюнку. Тепер треба визначити сам екранний прямокутник так, щоб його пропорції відповідали прямокутнику образа, тобто
де - горизонтальний і вертикальний розмір одного пікселя. Ці параметри легко встановити, знаючи розміри екрана й дозвіл. Звідси одержуємо
Тепер досить задати на екрані початок відліку й горизонтальний розмір вікна, а інші параметри легко обчислюються.
Дата добавления: 2015-04-03; просмотров: 1507;