Графические функции в любом пакете, как правило, задаются как набор описаний, которые не зависят от какого бы то ни было языка программирования. Затем задается привязка к языку для определенного языка программирования высокого уровня. Эта привязка задает синтаксис, позволяющий пользоваться различными графическими функциями этого языка. Каждая привязка к языку задается так, чтобы можно было максимально использовать соответствующие возможности языка и управлять различными моментами, связанными с синтаксисом, такими как типы данных, задание параметров и обработка ошибок. Спецификации для реализации графического пакета в определенном языке устанавливаются Международной организацией по стандартизации. Привязки пакета OpenGL к языкам С и C++ одинаковы. Существуют и другие привязки для пакета OpenGL, такие как привязки к языкам Ada и Fortran.

В последующих главах мы будем пользоваться привязкой к языкам C/C++ для пакета OpenGL в качестве основы для изучения основных графических понятий и для разработки и применения графических программных пакетов. Примеры программ на языке C++ иллюстрируют применение пакета OpenGL и общие алгоритмы реализации графических функций.

ДРУГИЕ ГРАФИЧЕСКИЕ ПАКЕТЫ

Были разработаны и многие другие библиотеки для программирования в области компьютерной графики. Некоторые из них предлагают общие графические стандартные функции, а некоторые предназначены для специальных приложений или отдельных аспектов компьютерной графики, таких как анимация, виртуальная реальность или графика в сети Internet.

Пакет под названием Open Inventor предоставляет набор объектно-ориентированных стандартных функций для описания сцен, которые нужно изобразить с обращениями к OpenGL. Язык моделирования виртуальной реальности - Virtual-Reality Modeling Language {VRML), который начинался как подмножество пакета Open Inventor, позволяет нам создавать трехмерные модели виртуальных миров в сети Internet. Изображения на Web-страницах можно создавать и с помощью графических библиотек, разработанных для языка Java. С помощью Java 2D, можно создавать, например, двухмерные сцены в рамках аплетов языка Java. Или можно рисовать трехмерные Web-изображения с помощью Java 3D. А с помощью Renderman Interface производства компании Pixar Corporation можно генерировать сцены, используя разнообразные модели освещения. И, наконец, графические библиотеки часто предлагаются как часть систем другого типа, таких как программы Mathematica, MatLab и Maple.

ЗНАКОМСТВО С OpenGL

Основная библиотека функций в пакете OpenGL предлагается для спецификации графических примитивов, атрибутов, геометрических преобразований, преобразований наблюдения и многих других операций. Как отмечалось в последнем разделе, OpenGL разрабатывался таким образом, чтобы быть независимым от аппаратных средств, поэтому многие операции, такие как функции ввода и вывода, не входят в число функций основной библиотеки. Несмотря на это, стандартные функции ввода и вывода, а также множество дополнительных функций доступны во вспомогательных библиотеках, разработанных для программ OpenGL.


⇐ вернуться назад | | далее ⇒