FillRect Psychtoolbox经常导致错误

时间:2014-06-16 20:15:23

标签: matlab psychtoolbox

我的代码:

Screen('OpenWindow', 0, [0 0 0], [0 0 600 600])
Screen('FillRect', win, [0 255 0 ], [0 0 50 50]);
Screen('Flip', win);

据我所知,记录的行是:

Screen('FillRect', windowPtr [,color] [,rect] )

windowPtr作为占位符,需要使用变量名替换以标识此特定形状。但是,当我使用win来识别它时,我不断收到错误:

  

未定义的功能或变量' win'。
  练习_Script_1中的错误(第17行)
  屏幕(' FillRect',win,[0 255 0],[0 0 50 50]);

我不明白我做错了什么,这可能只是一些让我感到沮丧的noob错误。

1 个答案:

答案 0 :(得分:0)

我没有Psychtoolbox,但此错误消息通常表示未定义(在本例中)win变量。您是否在调用上面的代码行之前初始化了这个变量?

以下链接creating experiments using MATLAB and Psychtoolbox包含一些示例代码,并将win变量定义为

win = Screen('OpenWindow',0, [900 900 1000], [10,10, 1100,1100]);

你需要做类似的事情。另一个链接MATLAB cookbook执行以下操作

% Initialize the screen with a black background
% rect is the coordinates of the screen
[win rect] = Screen('OpenWindow', 0, [0 0 0]);

ovalColor = [0 255 0];         % RGB color for the oval
rectColor = [255 0 0];         % RGB color for the rectangle
ovalRect  = [100 100 300 200]; % Coordinates [x1 y1 x2 y2]
rectRect  = [100 250 300 350]; % Coordinates [x1 y1 x2 y2]

Screen('FillOval', win, ovalColor, ovalRect);
Screen('FillRect', win, rectColor, rectRect);
Screen('Flip', win);

尝试任一选项,看看会发生什么。