Такие текучие объекты, как облака, дым, огонь, вода и взрывающиеся вещи, можно смоделировать системой многих частиц. С помощью данного представления объект описывается набором частиц и правилами, управляющими движением частиц.
Методы физического моделирования можно использовать для описания характеристик таких гибких объектов, как веревка, резина или ткань. Данная схема представляет материал сеткой пружиноподобных участков и вычисляет деформации с использованием сил, действующих на объект.
Техники визуализации используют методы компьютерной графики для анализа наборов данных, которые могут включать скалярные, векторные и тензорные значения в различных комбинациях. Данные могут представлять с использованием цветового кодирования или отображения объектов различной формы.
Многоугольные грани поверхности стандартного графического объекта можно задать в OpenGL, используя функции многоугольных, треугольных или четырехугольных примитивов. Кроме того, существуют процедуры GLUT для отображения пяти правильных многогранников. Сферы, конусы и другие объекты с поверхностями второго порядка можно отобразить с помощью функций GLUT и GLU, также существует процедура GLUT для генерации заварочного чайника с кубическими поверхностями. Корневая библиотека OpenGL содержит функции создания сплайнов Безье, а функции GLU подходят для задания би-сплайнов и обрезающих кривых сплайновых поверхностей. Многоугольные, квадратические, кубические и сплайновые функции OpenGL, рассмотренные в данной главе, сведены в табл. 8.1-8.4.
ТАБЛИЦА 8.1. Резюме по функциям многогранников в OpenGL
Функция |
Описание |
glutWireTetrahedron |
Отображает каркасную треугольную пирамиду (тет |
раэдр) | |
glutSolidTetrahedron |
Отображает тетраэдр с затененными поверхностями |
glutWireCube |
Отображает каркасный куб |
glutSolidCube |
Отображает куб с затененными поверхностями |
glutWireOctahedron |
Отображает каркасный октаэдр |
glutSolidOctahedron |
Отображает октаэдр с затененными поверхностями |
glutWireDodecahedron |
Отображает каркасный додекаэдр |
glutSolidDodecahedron |
Отображает додекаэдр с затененными поверхностями |
glutWirelcosahedron |
Отображает каркасный икосаэдр |
glutSolidlcosahedron |
Отображает икосаэдр с затененными поверхностями |
ТАБЛИЦА 8.2. Резюме по функциям поверхностей второго и третьего порядка в OpenGL
Функция |
Описание |
glutWireSphere |
Отображает каркасную сферу GLUT |
glutSolidSphere |
Отображает сферу GLUT с затененными поверхностями |
glutWireCone |
Отображает каркасный конус GLUT |
glutSolidCone |
Отображает конус GLUT с затененными поверхностями |
glutWireTorus |
Отображает каркасный тор GLUT с круговым поперечным сечением |
glutSolidTorus |
Отображает тор GLUT с круговым поперечным сечением с затененными поверхностями |
glutWireTeapot |
Отображает каркасный чайник GLUT |
glutSolidTeapot |
Отображает чайник GLUT с затененными поверхностями |
gluNewQuadric |
Активизирует процедуру квадратичной визуализации GLU объекта, имя которого было определено в объявлении GLUquadrіcObj *nameOfObject; |
gluQuadricDrawStyle |
Выбирает режим отображения для предопределенного имени объекта GLU |
gluSphere |
Отображает сферу GLU |
Функция |
Описание |
gluCylinder |
Отображает конус, цилиндр или конический цилиндр GLU |
gluDisk |
Отображает плоское круговое кольцо или объемный диск GLU |
gluPartialDisk |
Отображает участок плоского кругового кольца или объемного диска GLU |
gluDeleteQuadric |
Удаляет объект второго порядка GLU |
gluQuadricOrientation |
Определяет внутреннюю и внешнюю ориентацию объекта второго порядка GLU |
gluQuadricNormals |
Задает, как должны генерироваться векторы нормали к поверхности объекта второго порядка GLU |
gluQuadricCallback |
Задает функцию обратного вызова по ошибке для объекта второго порядка GLU |
ТАБЛИЦА 8.3. Резюме по функциям Безье в OpenGL