Всего на сайте:
303 тыс. 117 статей

Главная | Информатика

Пример 1., importsys fromOpenGL.GLUT import* fromOpenGL.GL import* # Инициализ..  Просмотрен 64

importsys

fromOpenGL.GLUT import*

fromOpenGL.GL import*

# Инициализация освещения

definit():

light_ambient = [0.0, 0.0, 0.0, 1.0]

light_diffuse = [1.0, 1.0, 1.0, 1.0]

light_specular = [1.0, 1.0, 1.0, 1.0]

light_position = [1.0, 1.0, 1.0, 0.0]

glLightfv(GL_LIGHT0, GL_AMBIENT, light_ambient)

glLightfv(GL_LIGHT0, GL_DIFFUSE, light_diffuse)

glLightfv(GL_LIGHT0, GL_SPECULAR, light_specular)

glLightfv(GL_LIGHT0, GL_POSITION, light_position)

glEnable(GL_LIGHTING)

glEnable(GL_LIGHT0)

glEnable(GL_DEPTH_TEST)

defdisplay():

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT)

glPushMatrix()

glRotatef(20.0, 1.0, 0.0, 0.0)

glPushMatrix()

glTranslatef(-0.75, 0.5, 0.0) # пространственные перемещения

glRotatef(90.0, 1.0, 0.0, 0.0) # пространственные перемещения

glutSolidTorus(0.275, 0.85, 15, 15) # прорисовка тора

glPopMatrix()

glPushMatrix()

glTranslatef(-0.75, -0.5, 0.0) # пространственные перемещения

glRotatef(270.0, 1.0, 0.0, 0.0) # пространственные перемещения

glutSolidCone(1.0, 2.0, 15, 15) # прорисовка конуса

glPopMatrix()

glPushMatrix()

glTranslatef(0.75, 0.0, -1.0) # пространственные перемещения

glutSolidSphere(1.0, 15, 15) # прорисовка сферы

glPopMatrix()

glPopMatrix()

glFlush()

defreshape(w, h):

glViewport(0, 0, w, h)

glMatrixMode(GL_PROJECTION)

glLoadIdentity()

ifw <= h:

glOrtho(-2.5, 2.5, -2.5 * h / w, 2.5 * h / w,

-10.0, 10.0) # создание матрицы проекции

else:

glOrtho(-2.5 * w / h, 2.5 * w / h,

-2.5, 2.5, -10.0, 10.0) # создание матрицы проекции

glMatrixMode(GL_MODELVIEW)

glLoadIdentity()

# Открытие окна с заданными размерами и заголовком

# RGBAотображение

glutInit(sys.argv)

glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB | GLUT_DEPTH)

glutInitWindowSize(500, 500)

glutCreateWindow('Figures')

init()

glutReshapeFunc(reshape)

glutDisplayFunc(display)

glutMainLoop()

Результат работы программы:

Предыдущая статья:Библиотека PyOpenGL Следующая статья:Пример 2., fromOpenGL.GL import* fromOpenGL.GLU import* importpygame frompygam..
page speed (0.0368 sec, direct)