Функция glClipPlane
Функция glClipPlane задает плоскость, в которой обрезается вся геометрия.
Синтаксис
void WINAPI glClipPlane(
GLenum plane,
const GLdouble *equation
);
Параметры
-
plane
-
Плоскость обрезки, которая размещается. Принимаются символические имена формы GL_CLIP_PLANEi, где i — целое число от 0 до GL_MAX_CLIP_PLANES –1.
-
Уравнение
-
Адрес массива из четырех значений двойной точности с плавающей запятой. Эти значения интерпретируются как уравнение плоскости.
Возвращаемое значение
Эта функция не возвращает значение.
Коды ошибок
Следующие коды ошибок могут быть получены функцией glGetError .
Имя | Значение |
---|---|
|
плоскость не является допустимым значением. |
|
Функция была вызвана между вызовом glBegin и соответствующим вызовом glEnd. |
Комментарии
Геометрия всегда обрезается к границам шестиуровневой границы в x, y и z. Функция glClipPlane позволяет задавать дополнительные плоскости, не обязательно перпендикулярные оси X, оси Y или Z, относительно которых обрезается вся геометрия. Можно указать до GL_MAX_CLIP_PLANES плоскостей, где GL_MAX_CLIP_PLANES не менее шести во всех реализациях. Так как результирующая область обрезки является пересечением определенных полупространств, она всегда выпуклая.
Функция glClipPlane задает половину пространства с помощью четырехкомпонентного уравнения плоскости. При вызове glClipPlaneуравнение преобразуется с помощью обратной матрицы представления модели и сохраняется в результирующие координаты глаз. Последующие изменения матрицы представления модели не оказывают никакого влияния на хранимые компоненты плоскостного уравнения. Если точечное произведение координат глаз вершины с сохраненными компонентами уравнения плоскости является положительным или нулевым, вершина находится по отношению к этой плоскости обрезки. В противном случае это не так.
Используйте функции glEnable и glDisable , чтобы включить и отключить отсеченные плоскости. Вызов обрезки плоскостей с аргументом GL_CLIP_PLANEi, где i — номер плоскости.
По умолчанию все плоскости обрезки определяются как (0,0,0,0) в координатах глаз и отключены.
Это всегда так, что GL_CLIP_PLANEi = GL_CLIP_PLANE0 + i.
Следующие функции извлекают сведения, связанные с glClipPlane:
glIsEnabled с аргументом GL_CLIP_PLANE i
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|
Библиотека |
|
DLL |
|