Files
@ cb396a0ff04b
Branch filter:
Location: light9/lightsim/sim2 - annotation
cb396a0ff04b
3.5 KiB
text/plain
missing bower deps
Ignore-this: db28e043c0775f5e44730d7dc07d73e5
Ignore-this: db28e043c0775f5e44730d7dc07d73e5
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 | f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b f866d4dec57b | #!/usr/bin/python2.4
from __future__ import division
import sys, time, math
import Image, ImageFilter
import Numeric as num
from OpenGL import GL, GLUT, GLU
from OpenGL.GL import *
def openglSetup(width=512, height=256):
global cardList
glClearColor (0.0, 0.0, 0.0, 0.0)
glShadeModel (GL_SMOOTH)
glEnable(GL_COLOR_MATERIAL)
glLightfv(GL_LIGHT0, GL_AMBIENT, [0.0, 0.0, 0.0, 1.0])
glLightfv(GL_LIGHT0, GL_DIFFUSE, [1.0, 1.0, 1.0, 1.0])
glLightfv(GL_LIGHT0, GL_POSITION, [0.0, 3.0, 3.0, 0.0])
glLightModelfv(GL_LIGHT_MODEL_AMBIENT, [0.2, 0.2, 0.2, 1.0])
glLightModelfv(GL_LIGHT_MODEL_LOCAL_VIEWER, [0])
#glFrontFace(GL_CW)
glEnable(GL_LIGHTING)
glEnable(GL_LIGHT0)
#glEnable(GL_AUTO_NORMAL)
#glEnable(GL_NORMALIZE)
glEnable(GL_DEPTH_TEST)
glViewport (0, 0, width, height)
glMatrixMode (GL_PROJECTION)
glLoadIdentity ()
glFrustum (-1.0, 1.0, -1.0, 1.0, 1.5, 20.0)
glMatrixMode (GL_MODELVIEW)
cardList = glGenLists(1)
glNewList(cardList, GL_COMPILE)
glColor3f(1,1,1)
glBegin(GL_QUADS)
glTexCoord2f(0.0, 1.0); glVertex3f(-1.0, 0.0, 1.0)
glTexCoord2f(1.0, 1.0); glVertex3f( 1.0, 0.0, 1.0)
glTexCoord2f(1.0, 0.0); glVertex3f( 1.0, 1.0, 1.0)
glTexCoord2f(0.0, 0.0); glVertex3f(-1.0, 1.0, 1.0)
glEnd()
glEndList()
def imageCard(img):
"""card facing +Z from -1<x<1 -1<y<1"""
textureData = img.convert(mode="RGBA").tostring()
glBindTexture(GL_TEXTURE_2D, 0)
glTexImage2D( GL_TEXTURE_2D, 0, GL_RGBA,
512, #multiImage.size()[0],
256, #multiImage.size()[1],
0,
GL_RGBA, GL_UNSIGNED_BYTE, textureData)
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST)
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST)
glCallList(cardList)
def setupDraw():
"""per-frame setup"""
glClearColor(0.0, 0.0, 0.0, 0.0)
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT)
glLoadIdentity ()
GLU.gluLookAt (0.5, 0.5, 8.0,
0.5, 0.5, 0.0,
0.0, 1.0, 0.0)
glDisable(GL_TEXTURE_2D)
correctFrameStart = None
def drawFrame():
global correctFrameStart
t1 = time.time()
setupDraw()
matching = False
glPushMatrix()
try:
glTranslatef(1, -.9, 3.2)
# flip to compensate for the camera facing the user
glScalef(-1, 1, 1)
glDisable(GL_LIGHTING)
glEnable(GL_TEXTURE_2D)
# imageCard(Image.open("skyline/bg.png"))
imageCard(Image.open("skyline/cyc-lo-red.png"))
## if grab.lastFrame:
## imageCard(grab.lastFrame)
## glEnable(GL_LIGHTING)
## glDisable(GL_TEXTURE_2D)
## if grab.seenPose:
## for colorName, pos in grab.seenPose.pos.items():
## cube(color=(x / 255 for x in vision.colors[colorName]),
## center=((1-pos[0]) * 2 - 1, pos[1] * 2 - 1, 1),
## side=.1, wire=False)
## matching = game.pose.compare(grab.seenPose)
glEnable(GL_LIGHTING)
glDisable(GL_TEXTURE_2D)
finally:
glPopMatrix()
glFlush()
#print "draw", time.time() - t1
GLUT.glutInit(sys.argv)
window = GLUT.glutCreateWindow("sim2")
openglSetup()
GLUT.glutDisplayFunc(drawFrame)
def menu(arg):
print "hi", arg
GLUT.glutCreateMenu(menu)
GLUT.glutAddMenuEntry("hi", 1)
GLUT.glutAttachMenu(GLUT.GLUT_RIGHT_BUTTON)
GLUT.glutMainLoop()
|