Комп’ютерна візуалізація

Комп'ютерна графіка - це область інформатики, в якій розглядаються алгоритми і технології візуалізації даних. Розвиток комп'ютерної графіки визначається в основному двома чинниками: реальними потребами потенційних користувачів і можливостями апаратного та програмного забезпечення. Потреби споживачів і можливості техніки неухильно ростуть, і на сьогоднішній день комп'ютерна графіка активно використовується в самих різних сферах. Можна виділити наступні сфери застосування комп'ютерної графіки:

  1. Візуалізація інформації.
  2. Моделювання процесів і явищ.
  3. Проектування технічних об'єктів.
  4. Організація користувальницького інтерфейса.

візуалізація інформації

У більшості наукових статей і звітів не обійтися без візуалізації даних. Гідна форма представлення даних - це добре структурована таблиця з точними значеннями функції в залежності від деяких змінних. Але часто більш наочною і ефективною формою візуалізації даних є графічна, а, наприклад, при моделюванні і обробці зображень - єдино можлива. Деякі види відображення інформації різного походження перераховані в наступній таблиці:

гістограма
секторная діаграма

ламана крива
точкова діаграма
векторна діаграма
півтонування
топографічна карта
карта рівнів

поверхню
векторна діаграма
карта обсягу

Моделювання процесів і явищ

Сучасні графічні системи володіють достатньою продуктивністю для створення складних анімаційних і динамічних зображень. В системах моделювання, які також називаються симуляторами, намагаються отримати і візуалізувати картину процесів і явищ, які відбуваються або могли б відбуватися в реальності. Найвідомішим і найбільш складним прикладом такої системи є симулятор польотів, який використовують для моделювання обстановки та процесу польоту при навчанні пілотів. В оптиці симулятори використовуються для моделювання складних, дорогих або небезпечних явищ. Наприклад, моделювання формування зображення або моделювання процесів в лазерних резонаторах.

Проектування технічних об'єктів

Проектування є однією з основних стадій створення вироби в техніці. Сучасні графічні системи дозволяють наочно візуалізувати проектований об'єкт, що сприяє швидкому виявленню та вирішенню багатьох проблем. Розробник судить про свою роботу не тільки по цифрам і непрямих параметрах, він бачить предмет проектування на свойм екрані. Комп'ютерні системи дозволяють організувати інтерактивну взаємодію з проектованим об'єктом і імітувати виготовлення макета з пластичного матеріалу. CAD-системи істотно спрощують і прискорюють роботу інженера-конструктора, звільняючи його від рутинного процесу креслення.

Організація користувальницького інтерфейса

В останні 5-7 років візуальна парадигма при організації интерфеса між комп'ютером і кінцевим користувачем стала домінуючою. Віконний графічний інтерфейс вбудований в багато сучасні операційні системи. Вже досить стандартизований набір елементів управління, які використовуються при побудові такого інтерфейсу. Більшість користувачів вже звикло до такої організації інтерфейсу, який дозволяє користувачам відчувати себе більш комфортно і підвищувати ефективність взаємодії.

Все це, говорить про те, що в самій операційній системі повинні бути вже реалізовані досить велика кількість функцій для візуалізації елементів управління. Наприклад, операційна система Windows надає розробникам GDI (Graphics Device Interface). Як показує практика для деяких додатків можливостей, що надаються системної API, цілком достатньо для візуалізації даних, що обробляються (побудови найпростіших графіків, уявлення модельованих об'єктів і явищ). Але такі недостатакі, як низька швидкість відображення, відсутність підтримки тривимірної графіки не сприяють її використання для візуалізації наукових даних і комп'ютерного моделювання. У деяких наукових і технічних програмах зі складним графічним висновком потрібні функції для більш швидкої, потужною і гнучкою візуалізації обчислених даних, модельованих явищ, об'єктів, що проектуються.

Технології комп'ютерної графіки

У сучасних наукових і технічних додатках складний графічна визуалізація реалізується з використанням бібліотеки OpenGL, яка стала стандартом de facto в області тривимірної візуалізації. Бібліотека OpenGL являє собою високоефективний програмний інтерфейс до графічного апаратного забезпечення. Найбільшу прізводітельность ця бібліотека дозволяє досягти в апаратних системах працюють на основі сучасних графічних прискорювачів (апаратне забезпечення, що звільняє процесор і виконує обчислення, необхідні для візуалізації).

Бібліотека OpenGL є безкоштовно розповсюджується, що є її безсумнівним гідністю і причиною такого широкого використання.

OpenGL є не об'єктно-орієнтованої, а процедурної бібліотекою (близько сотні команд і функцій), написана на мові С. З одного боку - це недолік (комп'ютерна графіка - благодатна область використання об'єктно-орієнтованого програмування), але зате працювати з OpenGL можуть програмісти працюють на C ++, Delphi, Fortran і навіть Java і Python.

Спільно з OpenGL зазвичай використовується кілька допоміжних бібліотек, які допомагають наcтроіть роботу бібліотеки в даному середовищі або виконати більш складні, комплексні функції візуалізації, які реалізуються за допомогою примітивних функцій OpenGL. Крім того існує велика кількість графічних бібліотек спеціалізованого призначення, які використовують бібліотеку OpenGL в якості низькорівневого базису, своєрідного асемблера, на основі якого будуються складні функції графічного виведення (OpenInventor, vtk, IFL і багато інших). З спільнотою користувачів OpenGL можна познайомитися на сайті www.opengl.org

Фірма Microsoft теж розробила і пропонує використовувати для подібних цілей мультимедійну бібліотеку DirectX. Ця бібліотека широко використовується в ігрових і мультимедійних додатках, а в наукових і технічних додатках поширення не отримала. Причина полягати, швидше за все в тому, що DirectX працює тільки під Windows.