function zufallsquadrate (varargin)
% function zufallsquadrate (wiederholungen)
% erzeugt einen visuellen Stimulus, der aus einem Quadrat fester Farbe und 
% Groesse besteht, das vor einheitlichem Hintergrund jeweils nach einem
% festen Zeitinterval seine Position zufaellig aendert.
% Vom Benutzer wird die Anzahl der Wiederholungen vorgegeben. 

% Abbildung erzeugen und 
if length(varargin)==1 %wird nur 1 Parameter angegeben:
    wiederholungen=varargin{1}; 
    pausezufall=2;          %voreingestellter Defaultwert
    schalter=0;             %schalter, der unten benötigt wird
elseif length(varargin)==2  %Eingabe von zwei Parametern
    wiederholungen=varargin{1};
    pausezeit=varargin{2};  %der zweite Wert wird auf pausezeit gesetzt
    schalter=1;
     
else
    error('Sie müssen einen oder zwei Parameter angeben!')
end
    
    
bild=figure;
set(bild,'Color','white');

% Achsen festlegen
axis([0 12 0 12])
axis off 'square'
hold


% Erzeugen des Quadrates
qx=[0 0 2 2 0];
qy=[0 2 2 0 0];

% Schleife ueber die Wiederholungen:
for w=1:wiederholungen 
    % Auswuerfeln der Position (durch Faktor 10 wird sichergestellt, dass
    % das 2*2 Einheiten grosse Quadrat nicht aus dem sichtbaren Bereich 
    % verschwindet)
    posx=(randn+5);  %normalverteilt um die Mitte (quadrat ist 2*2-format)
    posy=(randn+5);
    % plotten des Quadrats
    farbvektor=[rand rand rand]; %zufälliger Farbvektor wird erzeugt
    
    fill(qx+posx,qy+posy,farbvektor,'EdgeColor',farbvektor)
    % 5 sec Wartezeit
    if schalter==1  %wenn ein pausewert angegeben wurde
    pausezufall=rand*pausezeit; %zufällige Pause mit Maximalwert Pausezeit
    end
    pause(pausezufall)
    % Loeschen des Quadrats
    fill(qx+posx,qy+posy,'white','EdgeColor','white')
end


