Функция gluPickMatrix
Функция gluPickMatrix определяет область выбора.
Синтаксис
void WINAPI gluPickMatrix(
GLdouble x,
GLdouble y,
GLdouble height,
GLdouble width,
GLint viewport[4]
);
Параметры
-
x
-
Координата окна x области выбора.
-
y
-
Координата окна Y области выбора.
-
height
-
Высота области выбора в координатах окна.
-
width
-
Ширина области выбора в координатах окна.
-
Видового экрана
-
Текущее окно просмотра (как из вызова glGetIntegerv ).
Возвращаемое значение
Эта функция не возвращает значение.
Комментарии
Функция gluPickMatrix создает матрицу проекции, используемую для ограничения рисования небольшой областью окна просмотра.
Используйте gluPickMatrix , чтобы ограничить рисование небольшой областью вокруг курсора.
Войдите в режим выбора (с помощью glRenderMode), а затем перерисовка сцены.
Все примитивы, которые были бы нарисованы рядом с курсором, идентифицируются и сохраняются в буфере выбора.
Матрица, созданная с помощью gluPickMatrix , умножается на текущую матрицу так же, как если бы метод glMultMatrix был вызван с созданной матрицей.
- Вызовите glLoadIdentity , чтобы загрузить матрицу удостоверений в стек матриц перспективы.
- Вызовите gluPickMatrix.
- Вызовите функцию (например , gluPerspective), чтобы умножить матрицу перспективы на матрицу выбора.
При использовании gluPickMatrix для выбора неоднородного рационального B-сплайна (NURBS) будьте осторожны, чтобы отключить свойство NURBS, GLU_AUTO_LOAD_MATRIX. Если GLU_AUTO_LOAD_MATRIX не отключен, любая отрисоченная поверхность NURBS будет разделена иначе с матрицей выбора и тем, как она была разделена без матрицы выбора.
Примеры
При отрисовке сцены следующим образом:
glMatrixMode(GL_PROJECTION);
glLoadIdentity( );
gluPerspective(. . .);
glMatrixMode(GL_MODELVIEW);
/* Draw the scene */
Следующий код выбирает часть окна просмотра:
glMatrixMode(GL_PROJECTION);
glLoadIdentity( );
gluPickMatrix(x, y, width, height, viewport);
gluPerspective(. . .);
glMatrixMode(GL_MODELVIEW);
/* Draw the scene */
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|
Библиотека |
|
DLL |
|