Используя PsychoPy, я пытаюсь написать простой скрипт, который генерирует расширяющийся круг, который:
1) Увеличивает угол обзора от 2 до 20 градусов за 250 мс.
2) Держится при 20 градусах еще 250 мс.
3) Повторяется n раз с интервалом между стимулами 500 мс (пустой, серый экран) между повторениями.
Код Python, который у меня есть:
from psychopy import visual, core, event
# Define the window/background.
win=visual.Window([800,600],monitor="testMonitor",units="deg")
# Setting up some variables: I'm not sure how best to use them:
# Number of epochs (repetitions)
EPOCH=15
# Stimulus initial size
INIT_RAD=2
# Stimulus end size
END_RAD=10
# Duration of expansion
EXPANSION_MS=250
# Hold duration
HOLD_TIME_MS=250
# ISI duration
ISI_MS=500
# Time-to-frame conversion assuming a 60Hz FR and RR
FRAMES=int((60*EXPANSION_MS)/1000)
print(FRAMES)
# Define the stimulus
circle=visual.Circle(win,radius=1,edges=1000,fillColor='black',lineColor='black')
for e in range(EPOCH):
for f in range(FRAMES):
while circle.radius<10:
circle.radius+=1
circle.draw()
win.flip()
# for f in range(FRAMES): # Doesn't seem to work - takes much longer than 250 ms.
# circle.radius=20
# circle.draw()
# win.flip()
print(circle.radius)
circle.radius=1
# Get keys to quit.
if len(event.getKeys())>0:
event.clearEvents()
win.close()
Я все еще новичок в Python, и если кто-то может предложить некоторые предложения, я буду очень признателен.