This Page

Quick links

Drifting plaid demoΒΆ

The following code also checks for a keypress. The timing method simply uses a Clock object with the .getTime() call. This is very easy to code, but not quite as accurate as using the frame tick.

draw a drifting plaid
#!/usr/bin/env python2
from psychopy import visual, core, event

#create a window to draw in
myWin = visual.Window((600,600), allowGUI=False)

#INITIALISE SOME STIMULI
grating1 = visual.GratingStim(myWin,mask="gauss",
    rgb=[1.0,1.0,1.0],opacity=1.0,
    size=(1.0,1.0), sf=(4,0), ori = 45)
grating2 = visual.GratingStim(myWin,mask="gauss",
    rgb=[1.0,1.0,1.0],opacity=0.5,
    size=(1.0,1.0), sf=(4,0), ori = 135)

trialClock = core.Clock()
t = 0
while t<20:#quits after 20 secs

    t=trialClock.getTime()

    grating1.setPhase(1*t)  #drift at 1Hz
    grating1.draw()  #redraw it

    grating2.setPhase(2*t)    #drift at 2Hz
    grating2.draw()  #redraw it

    myWin.flip()          #update the screen

    #handle key presses each frame
    for keys in event.getKeys():
        if keys in ['escape','q']:
            core.quit()