1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- function refreshtracker( varargin)
- %refreshtracker( varargin)
- %clears the tracker screen and displays all control windows
- %varargin: 1 to update values, enter nothing to refresh the screen
- persistent HArray
- global Par
- if nargin > 0 && varargin{1} == 1
- cla
- WIN = Par.WIN;
- nmW = size(WIN,2);
- HArray = zeros(nmW+3,1);
- ZM = Par.ZOOM;
-
- fix.x = cos((1:61)/30*pi);
- fix.y = sin((1:61)/30*pi);
-
- if Par.Bsqr
- dot.x = [-1 1 1 -1 -1];
- dot.y = [-1 -1 1 1 -1];
- else
- dot.x = cos((1:61)/30*pi);
- dot.y = sin((1:61)/30*pi);
- end
-
- % Screen rectangle
- HArray(1) = line('XData', [-Par.HW Par.HW Par.HW -Par.HW -Par.HW]*ZM, ...
- 'YData', [-Par.HH -Par.HH Par.HH Par.HH -Par.HH]*ZM);
- if strcmp(Par.tracker_version, 'tracker_dark')
- set(HArray(1), 'Color','w'); % make screen border lines white
- end
-
- % Fix dot
- HArray(2) = line('XData', WIN(1,1)*ZM, 'YData', WIN(2,1)*ZM);
- set(HArray(2), 'Marker', 'o', 'MarkerSize', 5*ZM, 'MarkerFaceColor', 'r')
-
- for i = 1:nmW
- if (WIN(5,i) == 0) %fix window
- HArray(4+i) = line('XData', (fix.x*WIN(3,i)*0.5+WIN(1,i))*ZM,...
- 'YData', (fix.y*WIN(4,i)*0.5+WIN(2,i))*ZM);
- if strcmp(Par.tracker_version, 'tracker_dark')
- set(HArray(4+i), 'Color', 'w');
- end
- HArray(3) = line('XData', (fix.x*WIN(3,i)*0.5*sqrt(0.5)+WIN(1,i))*ZM,...
- 'YData', (fix.y*WIN(4,i)*0.5*sqrt(0.5)+WIN(2,i))*ZM);
- set(HArray(3), 'Color', [0.7 0.7 0.7])
- if strcmp(Par.tracker_version, 'tracker_dark')
- set(HArray(3), 'Color', [0.5 0.5 0.5])
- end
- elseif(WIN(5,i) == 2) %2 == correct target window
- HArray(4) = line('XData', (dot.x*WIN(3,i)*0.5+WIN(1,i))*ZM, 'YData', (dot.y*WIN(4,i)*0.5+WIN(2,i))*ZM);
- set(HArray(4), 'Color', 'm')
- else
- HArray(4+i) = line('XData', (dot.x*WIN(3,i)*0.5+WIN(1,i))*ZM, 'YData', (dot.y*WIN(4,i)*0.5+WIN(2,i))*ZM);
- if strcmp(Par.tracker_version, 'tracker_dark')
- set(HArray(4+i), 'Color', 'w');
- end
- end
- end
-
- elseif varargin{1} == 2
- set(HArray(4), 'Color', 'g')
-
- elseif varargin{1} == 3
- set(HArray(2), 'MarkerFaceColor', 'g')
- else
- if ~isempty(HArray)
- cla( HArray )
- end
- end
|