Browse Source

Changing instruction displays to work better on a smaller screen. Can change to optimize when the actual screen is chosen. -MT

master
Michael Tan 6 years ago
parent
commit
18f1ee73e2
  1. 3
      SaccadePursuit.py
  2. 6
      SaccadePursuitEyeTracking.py
  3. 13
      template.py

3
SaccadePursuit.py

@ -168,7 +168,8 @@ class SPtask(template.BaseExperiment):
trial_list.append(trial) trial_list.append(trial)
counter += 1 counter += 1
random.shuffle(trial_list) if not condition=='Pursuit':
random.shuffle(trial_list)
return trial_list return trial_list

6
SaccadePursuitEyeTracking.py

@ -31,7 +31,7 @@ distance_to_monitor = 74
monitor_px = [1440,900] monitor_px = [1440,900]
window_screen = 1 window_screen = 1
disableTracker = True # For Debugging disableTracker = False # For Debugging
isi_time = 2 # Interstimulus Interval isi_time = 2 # Interstimulus Interval
data_directory = os.path.join( data_directory = os.path.join(
os.path.expanduser('~'), 'Desktop', 'ExperimentalData', 'SaccadePursuitEyeTracking') os.path.expanduser('~'), 'Desktop', 'ExperimentalData', 'SaccadePursuitEyeTracking')
@ -48,7 +48,7 @@ stim_color = [1,-1,-1]
saccade_fixation_color = [255,255,255] saccade_fixation_color = [255,255,255]
saccade_dot_color = [100,100,100] saccade_dot_color = [100,100,100]
antisaccade_instruct_file = os.path.join(image_directory,'AntiSaccadeInstruct2.tif') antisaccade_instruct_file = os.path.join(image_directory,'AntiSaccadeInstruct2.tif')
antisaccade_file_scale = 2.5 antisaccade_file_scale = 1
# Pursuit Parameters # Pursuit Parameters
number_of_pursuit_trials = 1 number_of_pursuit_trials = 1
@ -407,7 +407,7 @@ class EyeTrackingSaccadePursuit(SaccadePursuit.SPtask):
self.display_text_screen(text='Remember:\n\n' + pursuit_instruct_text) self.display_text_screen(text='Remember:\n\n' + pursuit_instruct_text)
elif condition=='Necker': elif condition=='Necker':
self.display_text_screen(text='Remember:\n\n' + necker_instruct_text, self.display_text_screen(text='Remember:\n\n' + necker_instruct_text,
image_file=self.response_box_file, image_file=self.necker_response_box_file,
image_scale=self.necker_response_box_scale) image_scale=self.necker_response_box_scale)
elif condition=='Rivalry': elif condition=='Rivalry':
self.display_text_screen(text='Remember:\n\n' + rivalry_instruct_text, self.display_text_screen(text='Remember:\n\n' + rivalry_instruct_text,

13
template.py

@ -353,18 +353,25 @@ class BaseExperiment(object):
self.experiment_window, text=text, color=text_color, units='pix', self.experiment_window, text=text, color=text_color, units='pix',
height=text_height, alignHoriz='center', alignVert='center', height=text_height, alignHoriz='center', alignVert='center',
wrapWidth=round(.8*self.experiment_window.size[0]), **kwargs) wrapWidth=round(.8*self.experiment_window.size[0]), **kwargs)
textObject.draw() #textObject.draw()
if image_file: # Display image immediately below text. if image_file: # Display image immediately below text.
textObject.pos = (0,self.experiment_window.size[1]/2-5)
textObject.alignVert = 'top'
textObject.draw()
imageObject = psychopy.visual.ImageStim( imageObject = psychopy.visual.ImageStim(
self.experiment_window, units='pix', self.experiment_window, units='pix',
image=image_file) image=image_file)
sizex = int(round(imageObject.size[0])*image_scale) sizex = int(round(imageObject.size[0])*image_scale)
sizey = int(round(imageObject.size[1])*image_scale) sizey = int(round(imageObject.size[1])*image_scale)
belowText = int(math.floor(-textObject.boundingBox[1]/2-sizey/2)) #belowText = int(math.floor(-textObject.boundingBox[1]/2-sizey/2))
bottomOfScreen = int(math.floor(-self.experiment_window.size[1]/2+sizey/2))+5
imageObject.size = [sizex,sizey] imageObject.size = [sizex,sizey]
imageObject.pos = (0,belowText) #imageObject.pos = (0,belowText)
imageObject.pos = (0,bottomOfScreen)
imageObject.draw() imageObject.draw()
else:
textObject.draw()
self.experiment_window.flip() self.experiment_window.flip()

Loading…
Cancel
Save