【发布时间】:2014-10-25 17:55:04
【问题描述】:
我正在尝试创建一个在屏幕上移动、从边缘反弹并每隔 50 帧左右沿随机方向弯曲的点。
我这样做是为了让球不断移动并从屏幕边缘反弹。请注意,这使用了 PsychoPy:
win = visual.Window(size=(1600, 900), fullscr=False, screen=0, allowGUI=False, allowStencil=False, units='pix',
monitor='testMonitor', colorSpace=u'rgb', color=[0.51,0.51,0.51])
keys = event.BuilderKeyResponse()
dot1 = visual.Circle(win=win, name='dot1',units='pix',
radius=10, edges=32,
ori=0, pos=(0,0),
lineWidth=1, lineColor='red', lineColorSpace='rgb',
fillColor='red', fillColorSpace='rgb',
opacity=1,interpolate=True)
x_change = 10
y_change = 10
while True:
dot1.pos+=(x_change,y_change)
if dot1.pos[0] > 790 or dot1.pos[0] < -790:
x_change = x_change * -1
if dot1.pos[1] > 440 or dot1.pos[1] < -440:
y_change = y_change * -1
dot1.draw()
win.flip()
if event.getKeys(keyList=["escape"]):
core.quit()
我想这需要一些我几乎不明白的三角函数。 谁能指出我正确的方向?我需要什么变量,应该如何操作它们?
【问题讨论】:
-
我很好奇,你希望曲线是多少?
标签: python python-2.7 psychopy