Поделиться через


Функция gluEndSurface

Функции gluBeginSurface и gluEndSurface разделяют определение поверхности Non-Uniform Rational B-Spline (NURBS).

Синтаксис

void WINAPI gluEndSurface(
   GLUnurbs *nobj
);

Параметры

nobj

Объект NURBS (созданный с помощью gluNewNurbsRenderer).

Возвращаемое значение

Эта функция не возвращает значение.

Комментарии

Функции gluBeginSurface и gluEndSurface отмечают начало и конец определений поверхности NURBS, которые определяются с помощью вызовов gluNurbsSurface.

  1. Вызовите gluBeginSurface , чтобы отметить начало определения поверхности NURBS.

  2. Выполните один или несколько вызовов gluNurbsSurface , чтобы определить атрибуты поверхности.

    Один из этих вызовов gluNurbsSurface должен иметь тип поверхности GL_MAP2_VERTEX_3 или GL_MAP2_VERTEX_4.

  3. Чтобы отметить конец определения поверхности NURBS, вызовите gluEndSurface.

Функции gluBeginTrim, gluPwlCurve, gluNurbsCurve и gluEndTrim поддерживают обрезку поверхностей NURBS.

Используйте оценщики OpenGL для отрисовки поверхности NURBS в виде набора многоугольников. Сохраните состояние средства оценки во время отрисовки с помощью glPushAttrib (GL_EVAL_BIT) и glPopAttrib.

Примеры

Следующие функции отображают текстурированную поверхность NURBS с нормальными значениями. Координаты текстуры и нормали также описываются как поверхности NURBS:

gluBeginSurface(nobj); 
    gluNurbsSurface(nobj, . . ., GL_MAP2_TEXTURE_COORD_2); 
    gluNurbsSurface(nobj, . . ., GL_MAP2_NORMAL); 
    gluNurbsSurface(nobj, . . ., GL_MAP2_VERTEX_4); 
gluEndSurface(nobj);

Требования

Требование Значение
Минимальная версия клиента
Windows 2000 Professional [только классические приложения]
Минимальная версия сервера
Windows 2000 Server [только классические приложения]
Заголовок
Glu.h
Библиотека
Glu32.lib
DLL
Glu32.dll

См. также раздел

gluBeginCurve

gluBeginTrim

gluNewNurbsRenderer

gluNurbsCurve

gluNurbsSurface

gluPwlCurve