Python 如何使用键盘FUNC(键盘)执行操作?
以下是我的代码: 导入系统 导入pygame 茶点列表=无 def loadTexture(甘巴): textureSurface=pygame.image.load(甘巴)\ ... def gambarMeja(): glDisable(GLU照明) glEnable(GL_纹理_2D) glBindTexture(GL_TEXTURE_2D,loadTexture('Batik.jpg')) glPushMatrix() GLTRANSTEF(15.0,5.0,1.0) glRotatef(-15,0,1,0) glRotatef(20,1,0,0) glBegin(GLU四边形) .. def mejaTV(): 甘巴梅加() def display(): .. mejaTV() 甘巴里马里() def键盘(键,x,y): 如果key==chr(27): sys.exit() #主回路 如果名称=“\uuuuu main\uuuuuuuu”: .. glutDisplayFunc(显示) 键盘功能(键盘) glutMainLoop() 我想用一个动作来改变我的照片 对于此代码:Python 如何使用键盘FUNC(键盘)执行操作?,python,opengl,glut,pyopengl,opengl-compat,Python,Opengl,Glut,Pyopengl,Opengl Compat,以下是我的代码: 导入系统 导入pygame 茶点列表=无 def loadTexture(甘巴): textureSurface=pygame.image.load(甘巴)\ ... def gambarMeja(): glDisable(GLU照明) glEnable(GL_纹理_2D) glBindTexture(GL_TEXTURE_2D,loadTexture('Batik.jpg')) glPushMatrix() GLTRANSTEF(15.0,5.0,1.0) glRotatef
glBindTexture(GL\u TEXTURE\u 2D,loadTexture('Batik.jpg'))
我想通过按下p
按钮,通过键盘操作将图片更改为glBindTexture(GL\u TEXTURE\u 2D,loadTexture('persona.jpg'))
。代码正在使用def键盘(键,x,y):
你能帮我解决这个问题吗?OpenGL是一个状态引擎。状态会一直保持,直到再次更改为止 在globale名称空间中添加变量
tob_batik
、tob_persona
和tob_current
:
tob_batik=无
tob_persona=无
tob_电流=无
def loadTexture(甘巴):
textureSurface=pygame.image.load(甘巴)
# [...]
在调用glutMainLoop()
之前加载2个纹理
#主回路
如果名称=“\uuuuu main\uuuuuuuu”:
# [...]
键盘功能(键盘)
tob_batik=loadTexture('batik.jpg'))
tob_persona=loadTexture('persona.jpg')
tob_电流=tob_蜡染
glutMainLoop()
根据按键(b或p)的不同,将更改为当前值
def键盘(键,x,y):
全球托布电流
如果key==chr(27):
sys.exit()
elif键==b'b':
tob_电流=tob_蜡染
elif键==b'p':
tob_current=tob_persona
再发现
将tob_current
绑定到gambarMeja
中:
def gambarMeja():
glDisable(GLU照明)
glEnable(GL_纹理_2D)
glBindTexture(GL_纹理_2D,tob_当前)
# [...]