Home > functions > gui > preAnalysis > trial_extractor > vb_timeseries_viewer_update_display_time_range.m

vb_timeseries_viewer_update_display_time_range

PURPOSE ^

update display time range.

SYNOPSIS ^

function [obj] = vb_timeseries_viewer_update_display_time_range(obj)

DESCRIPTION ^

 update display time range.
 [USAGE]
    [obj] = vb_timeseries_viewer_update_range(obj);
 [IN]
    obj : vb_timeseries_viewer object.
 [OUT]
    obj : vb_timeseries_viewer object.

 Copyright (C) 2011, ATR All Rights Reserved.
 License : New BSD License(see VBMEG_LICENSE.txt)

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function [obj] = vb_timeseries_viewer_update_display_time_range(obj)
0002 % update display time range.
0003 % [USAGE]
0004 %    [obj] = vb_timeseries_viewer_update_range(obj);
0005 % [IN]
0006 %    obj : vb_timeseries_viewer object.
0007 % [OUT]
0008 %    obj : vb_timeseries_viewer object.
0009 %
0010 % Copyright (C) 2011, ATR All Rights Reserved.
0011 % License : New BSD License(see VBMEG_LICENSE.txt)
0012 
0013 %
0014 % --- Previous check
0015 %
0016 if ~exist('obj', 'var')
0017     error('obj is a required parameter.');
0018 end
0019 
0020 %
0021 % --- Main Procedure
0022 %
0023 H = obj.H;
0024 
0025 set(obj.figure, 'Pointer', 'watch');
0026 
0027 Nsample = obj.Nsample;
0028 freq    = obj.freq;
0029 
0030 val = get(H.timeseries_slider, 'Value');
0031 
0032 max_sec  = Nsample/freq;
0033 
0034 % Display area
0035 % 0s                     max_sec
0036 %  |---|----------------|---|
0037 %      |<--- 0 to 1 --->|
0038 %  0 = window_len/2
0039 %  1 = max_sec - window_len/2
0040 
0041 window_center = (max_sec - obj.window_len) * val + obj.window_len/2;
0042 window_from = window_center - obj.window_len/2;
0043 window_to   = window_center + obj.window_len/2;
0044 
0045 % slider_step = get(H.timeseries_slider, 'SliderStep');
0046 % if obj.window_len > max_sec/2
0047 %     slider_step(2) = 1;
0048 % %    set(obj.H.timeseries_slider, 'Value', 0.5);
0049 % else
0050 %     slider_step(2) = 0.01;
0051 % end
0052 % set arrow moving step(ratio)
0053 ratio_arrow = obj.window_len / ((obj.total_time_sec) * 8);
0054 mov = get(H.timeseries_slider, 'SliderStep');
0055 mov(1) = min(ratio_arrow, 1);     % arrow push
0056 mov(2) = min(ratio_arrow*3, 1); % bar push
0057 set(H.timeseries_slider, 'SliderStep', mov);
0058 
0059 update = true;
0060 drag_state = getappdata(H.timeseries_slider, 'dragging');
0061 if get(obj.H.stop_draw_dragging_check, 'Value') && ...
0062    ~isempty(drag_state) && drag_state
0063    update = false;
0064 end
0065 
0066 if update
0067     % set Measurement data range
0068 %    tic;
0069     obj = vb_timeseries_viewer_plot_measurement_data(obj, window_from, window_to);
0070     obj = vb_timeseries_viewer_plot_trigger_data(obj, window_from, window_to);
0071     obj = vb_timeseries_viewer_plot_trial(obj);
0072     drawnow;
0073 %    toc;
0074 
0075     % Update Trigger Y-range
0076     if ~get(H.trigger_yrange_fix_check, 'Value')
0077         % if auto range, set value to editbox
0078         yrange = ylim(H.trigger_axes);
0079         set(H.ylimit_trigger_low_edit, 'String', num2str(yrange(1)));
0080         set(H.ylimit_trigger_high_edit, 'String', num2str(yrange(2)));
0081     end
0082 end
0083 
0084 set(H.timepoint_current_text, 'String', num2str(sprintf('%.3f', window_center)));
0085 set(H.time_max_text, 'String', num2str(max_sec));
0086 
0087 %set(H.timeseries_slider, 'min',
0088 
0089 set(obj.figure, 'Pointer', 'arrow');
0090 % debug
0091 %disp('pointer ->arrow');
0092 set(H.window_from_edit, 'String', num2str(window_from));
0093 set(H.window_to_edit, 'String', num2str(ceil(window_to)));
0094 
0095 
0096 %set(H.plotting_radio_button, 'Value', 0);
0097 
0098 %
0099 % --- After check
0100 %
0101 if nargout ~= 1
0102     error('function caller should receive vb_timeseries_viewer object.');
0103 end

Generated on Tue 27-Aug-2013 11:46:04 by m2html © 2005