Home > functions > plotfunc > vb_plotparmdlg.m

vb_plotparmdlg

PURPOSE ^

SYNOPSIS ^

function plot_parm_new = vb_plotparmdlg(plot_parm0)

DESCRIPTION ^

 Dialog for setting basic plot parameters
 2004-03-16 Taku Yoshioka

 plot_parm.fs
 plot_parm.ms
 plot_parm.lw
 plot_parm.cmap
 plot_parm.wmode
 plot_parm.norm
 plot_parm.wmax
 plot_parm.wmin
 plot_parm.angle
 plot_parm.priority
 plot_parm.Rlabel
 plot_parm.zoom
 plot_parm.paint
 plot_parm.print_ratio
 plot_parm.print_size
 plot_parm.light
 plot_parm.width
 plot_parm.Jmax_ratio
 plot_parm.Jmin_ratio

 --- Inner functions
 init_global_variables
 set_GUI_state
 get_GUI_state

 --- Callback functions
 change_cmap
 change_display_mode
 change_priority
 change_paint
 change_LR
 change_normal_mode
 push_ok
 load_plot_parm
 save_plot_parm

 --- Global variables in select_area_variables
 plot_parm
 h
 
 --- GUI handles
 ed1 (Font size)
 ed2 (Marker size)
 ed3 (Line width)
 ed4 (Max threshold)
 ed5 (Min threshold)
 ed6 (Angle)
 ed7 (Angle)
 ed8 (Rlabel)
 ed9 (Zoom)
 ed10 (print_ratio)
 ed11 (print_size)
 ed12 (width)
 rb1 (Colormap)
 rb2 (Display mode)
 rb3 (Priority)
 rb4 (Light)
 rb5 (Paint)
 rb6 (LRflag)
 rb7 (Normalization)
 

 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:

SUBFUNCTIONS ^

SOURCE CODE ^

0001 function plot_parm_new = vb_plotparmdlg(plot_parm0)
0002 %
0003 % Dialog for setting basic plot parameters
0004 % 2004-03-16 Taku Yoshioka
0005 %
0006 % plot_parm.fs
0007 % plot_parm.ms
0008 % plot_parm.lw
0009 % plot_parm.cmap
0010 % plot_parm.wmode
0011 % plot_parm.norm
0012 % plot_parm.wmax
0013 % plot_parm.wmin
0014 % plot_parm.angle
0015 % plot_parm.priority
0016 % plot_parm.Rlabel
0017 % plot_parm.zoom
0018 % plot_parm.paint
0019 % plot_parm.print_ratio
0020 % plot_parm.print_size
0021 % plot_parm.light
0022 % plot_parm.width
0023 % plot_parm.Jmax_ratio
0024 % plot_parm.Jmin_ratio
0025 %
0026 % --- Inner functions
0027 % init_global_variables
0028 % set_GUI_state
0029 % get_GUI_state
0030 %
0031 % --- Callback functions
0032 % change_cmap
0033 % change_display_mode
0034 % change_priority
0035 % change_paint
0036 % change_LR
0037 % change_normal_mode
0038 % push_ok
0039 % load_plot_parm
0040 % save_plot_parm
0041 %
0042 % --- Global variables in select_area_variables
0043 % plot_parm
0044 % h
0045 %
0046 % --- GUI handles
0047 % ed1 (Font size)
0048 % ed2 (Marker size)
0049 % ed3 (Line width)
0050 % ed4 (Max threshold)
0051 % ed5 (Min threshold)
0052 % ed6 (Angle)
0053 % ed7 (Angle)
0054 % ed8 (Rlabel)
0055 % ed9 (Zoom)
0056 % ed10 (print_ratio)
0057 % ed11 (print_size)
0058 % ed12 (width)
0059 % rb1 (Colormap)
0060 % rb2 (Display mode)
0061 % rb3 (Priority)
0062 % rb4 (Light)
0063 % rb5 (Paint)
0064 % rb6 (LRflag)
0065 % rb7 (Normalization)
0066 %
0067 %
0068 % Copyright (C) 2011, ATR All Rights Reserved.
0069 % License : New BSD License(see VBMEG_LICENSE.txt)
0070 
0071 % plot_parm0が構造体でなければ関数名とみなされる
0072 % (コールバック関数を呼び出す)
0073 if ~isstruct(plot_parm0)
0074   eval(plot_parm0);
0075   return
0076 end
0077 
0078 % Initialize global variables
0079 clear global plotparmdlg_variables
0080 global plotparmdlg_variables;
0081 init_global_variables(plot_parm0);
0082 
0083 %handle = dialog('WindowStyle','modal');
0084 handle = dialog('WindowStyle','normal');
0085 plotparmdlg_variables.h = handle;
0086 plot_parm = plotparmdlg_variables.plot_parm;
0087 
0088 %
0089 % Create GUI
0090 %
0091 m = 0.05;  % margin
0092 x = m;     % origin (x)
0093 y = m;     % origin (y)
0094 w = 1-2*m; % width
0095 h = 1-2*m; % height
0096 
0097 dh = 1/18*h;
0098 yy = y+17*dh;
0099 
0100 % Font size
0101 pos = [x yy 0.5*w dh];
0102 uicontrol('Style','text','String','Font size (>0)',...
0103       'Units','normalized','Position',pos,...
0104       'Parent',handle);
0105 pos = [x+0.5*w yy 0.5*w dh];
0106 ed1 = uicontrol('Style','edit','Units','normalized',...
0107         'Position',pos,'Parent',handle);
0108 yy = yy-dh;
0109 
0110 % Marker size
0111 pos = [x yy 0.5*w dh];
0112 uicontrol('Style','text','String','Marker size (>0)',...
0113       'Units','normalized','Position',pos,...
0114       'Parent',handle);
0115 pos = [x+0.5*w yy 0.5*w dh];
0116 ed2 = uicontrol('Style','edit','Units','normalized',...
0117         'Position',pos,'Parent',handle);
0118 yy = yy-dh;
0119 
0120 % Line width
0121 pos = [x yy 0.5*w dh];
0122 uicontrol('Style','text','String','Line width (>0)',...
0123       'Units','normalized','Position',pos,...
0124       'Parent',handle);
0125 pos = [x+0.5*w yy 0.5*w dh];
0126 ed3 = uicontrol('Style','edit','Units','normalized',...
0127         'Position',pos,'Parent',handle);
0128 yy = yy-dh;
0129 
0130 % Colormap
0131 pos = [x yy 0.5*w dh];
0132 uicontrol('Style','text','String','Colormap',...
0133       'Units','normalized','Position',pos,...
0134       'Parent',handle);
0135 pos = [x+0.5*w yy 0.25*w dh];
0136 rb1(1) = uicontrol('Style','radiobutton','String','hot',...
0137            'Units','normalized','Position',pos,...
0138            'Value',0,'Callback',...
0139            'vb_plotparmdlg(''change_cmap(1)'')',...
0140            'Parent',handle);
0141 pos = [x+0.75*w yy 0.25*w dh];
0142 rb1(2) = uicontrol('Style','radiobutton','String','jet',...
0143            'Units','normalized','Position',pos,...
0144            'Value',0,'Callback',...
0145            'vb_plotparmdlg(''change_cmap(2)'')',...
0146            'Parent',handle);
0147 yy = yy-dh;
0148 
0149 % Display mode
0150 pos = [x yy 0.5*w dh];
0151 uicontrol('Style','text','String','Display mode',...
0152       'Units','normalized','Position',pos,...
0153       'Parent',handle);
0154 pos = [x+0.5*w yy 0.25*w dh];
0155 rb2(1) = uicontrol('Style','radiobutton','String','absolute',...
0156            'Units','normalized','Position',pos,...
0157            'Value',0,'Callback',...
0158            'vb_plotparmdlg(''change_display_mode(1)'')',...
0159            'Parent',handle);
0160 pos = [x+0.75*w yy 0.25*w dh];
0161 rb2(2) = uicontrol('Style','radiobutton','String','real value',...
0162            'Units','normalized','Position',pos,...
0163            'Value',0,'Callback',...
0164            'vb_plotparmdlg(''change_display_mode(2)'')',...
0165            'Parent',handle);
0166 yy = yy-dh;
0167 
0168 % Max threshold
0169 pos = [x yy 0.5*w dh];
0170 uicontrol('Style','text','String','Max threshold (0.0-1.0)',...
0171       'Units','normalized','Position',pos,...
0172       'Parent',handle);
0173 pos = [x+0.5*w yy 0.5*w dh];
0174 ed4 = uicontrol('Style','edit','Units','normalized',...
0175         'Position',pos,'Parent',handle);
0176 yy = yy-dh;
0177 
0178 % Min threshold
0179 pos = [x yy 0.5*w dh];
0180 uicontrol('Style','text','String','Min threshold (0.0-1.0)',...
0181       'Units','normalized','Position',pos,...
0182       'Parent',handle);
0183 pos = [x+0.5*w yy 0.5*w dh];
0184 ed5 = uicontrol('Style','edit','Units','normalized',...
0185         'Position',pos,'Parent',handle);
0186 yy = yy-dh;
0187 
0188 % Normalization mode
0189 pos = [x yy 0.5*w dh];
0190 uicontrol('Style','text','String','Patch area normalization',...
0191       'Units','normalized','Position',pos,...
0192       'Parent',handle);
0193 pos = [x+0.5*w yy 0.25*w dh];
0194 rb7(1) = uicontrol('Style','radiobutton','String','Off',...
0195            'Units','normalized','Position',pos,...
0196            'Value',0,'Callback',...
0197            'vb_plotparmdlg(''change_normal_mode(1)'')',...
0198            'Parent',handle);
0199 pos = [x+0.75*w yy 0.25*w dh];
0200 rb7(2) = uicontrol('Style','radiobutton','String','On',...
0201            'Units','normalized','Position',pos,...
0202            'Value',0,'Callback',...
0203            'vb_plotparmdlg(''change_normal_mode(2)'')',...
0204            'Parent',handle);
0205 yy = yy-dh;
0206 
0207 % Angle
0208 pos = [x yy 0.5*w dh];
0209 uicontrol('Style','text','String','Angle (0-360)',...
0210       'Units','normalized','Position',pos,...
0211       'Parent',handle);
0212 pos = [x+0.5*w yy 0.25*w dh];
0213 ed6 = uicontrol('Style','edit','Units','normalized',...
0214         'Position',pos,'Parent',handle);
0215 pos = [x+0.75*w yy 0.25*w dh];
0216 ed7 = uicontrol('Style','edit','Units','normalized',...
0217         'Position',pos,'Parent',handle);
0218 yy = yy-dh;
0219 
0220 % Priority
0221 pos = [x yy 0.5*w dh];
0222 uicontrol('Style','text','String','Priority',...
0223       'Units','normalized','Position',pos,...
0224       'Parent',handle);
0225 pos = [x+0.5*w yy 0.25*w dh];
0226 rb3(1) = uicontrol('Style','radiobutton','String','Distribution',...
0227            'Units','normalized','Position',pos,...
0228            'Value',0,'Callback',...
0229            'vb_plotparmdlg(''change_priority(1)'')',...
0230            'Parent',handle);
0231 pos = [x+0.75*w yy 0.25*w dh];
0232 rb3(2) = uicontrol('Style','radiobutton','String','Area',...
0233            'Units','normalized','Position',pos,...
0234            'Value',0,'Callback',...
0235            'vb_plotparmdlg(''change_priority(2)'')',...
0236            'Parent',handle);
0237 yy = yy-dh;
0238 
0239 % Rlabel
0240 pos = [x yy 0.5*w dh];
0241 uicontrol('Style','text','String','Label distance (>=1.0)',...
0242       'Units','normalized','Position',pos,...
0243       'Parent',handle);
0244 pos = [x+0.5*w yy 0.5*w dh];
0245 ed8 = uicontrol('Style','edit','Units','normalized',...
0246         'Position',pos,'Parent',handle);
0247 yy = yy-dh;
0248 
0249 % zoom
0250 pos = [x yy 0.5*w dh];
0251 uicontrol('Style','text','String','Zoom (>0.0)',...
0252       'Units','normalized','Position',pos,...
0253       'Parent',handle);
0254 pos = [x+0.5*w yy 0.5*w dh];
0255 ed9 = uicontrol('Style','edit','Units','normalized',...
0256         'Position',pos,'Parent',handle);
0257 yy = yy-dh;
0258 
0259 % Paint mode
0260 pos = [x yy 0.5*w dh];
0261 uicontrol('Style','text','String','Paint',...
0262       'Units','normalized','Position',pos,...
0263       'Parent',handle);
0264 pos = [x+0.5*w yy 0.25*w dh];
0265 rb5(1) = uicontrol('Style','radiobutton','String','Off',...
0266            'Units','normalized','Position',pos,...
0267            'Value',0,'Callback',...
0268            'vb_plotparmdlg(''change_paint(1)'')',...
0269            'Parent',handle);
0270 pos = [x+0.75*w yy 0.25*w dh];
0271 rb5(2) = uicontrol('Style','radiobutton','String','On',...
0272            'Units','normalized','Position',pos,...
0273            'Value',0,'Callback',...
0274            'vb_plotparmdlg(''change_paint(2)'')',...
0275            'Parent',handle);
0276 yy = yy-dh;
0277 
0278 % LRflag
0279 pos = [x yy 0.5*w dh];
0280 uicontrol('Style','text','String','Left/Right',...
0281       'Units','normalized','Position',pos,...
0282       'Parent',handle);
0283 pos = [x+0.5*w yy 0.163*w dh];
0284 rb6(1) = uicontrol('Style','radiobutton','String','LR',...
0285            'Units','normalized','Position',pos,...
0286            'Value',0,'Callback',...
0287            'vb_plotparmdlg(''change_LR(1)'')',...
0288            'Parent',handle);
0289 pos = [x+0.663*w yy 0.163*w dh];
0290 rb6(2) = uicontrol('Style','radiobutton','String','L',...
0291            'Units','normalized','Position',pos,...
0292            'Value',0,'Callback',...
0293            'vb_plotparmdlg(''change_LR(2)'')',...
0294            'Parent',handle);
0295 pos = [x+0.826*w yy 0.163*w dh];
0296 rb6(3) = uicontrol('Style','radiobutton','String','R',...
0297            'Units','normalized','Position',pos,...
0298            'Value',0,'Callback',...
0299            'vb_plotparmdlg(''change_LR(3)'')',...
0300            'Parent',handle);
0301 yy = yy-dh;
0302 
0303 % Print ratio/size
0304 pos = [x yy 0.5*w dh];
0305 uicontrol('Style','text','String','Print ratio(>0.0)/size(>0.0,cm)',...
0306       'Units','normalized','Position',pos,...
0307       'Parent',handle);
0308 pos = [x+0.5*w yy 0.25*w dh];
0309 ed10 = uicontrol('Style','edit','Units','normalized',...
0310          'Position',pos,'Parent',handle);
0311 pos = [x+0.75*w yy 0.25*w dh];
0312 ed11 = uicontrol('Style','edit','Units','normalized',...
0313          'Position',pos,'Parent',handle);
0314 yy = yy-dh;
0315 
0316 % Colormap
0317 pos = [x yy 0.5*w dh];
0318 uicontrol('Style','text','String','Lighting',...
0319       'Units','normalized','Position',pos,...
0320       'Parent',handle);
0321 pos = [x+0.5*w yy 0.25*w dh];
0322 rb4(1) = uicontrol('Style','radiobutton','String','off',...
0323            'Units','normalized','Position',pos,...
0324            'Value',0,'Callback',...
0325            'vb_plotparmdlg(''change_light(1)'')',...
0326            'Parent',handle);
0327 pos = [x+0.75*w yy 0.25*w dh];
0328 rb4(2) = uicontrol('Style','radiobutton','String','on',...
0329            'Units','normalized','Position',pos,...
0330            'Value',0,'Callback',...
0331            'vb_plotparmdlg(''change_light(2)'')',...
0332            'Parent',handle);
0333 yy = yy-dh;
0334 
0335 % Slice width
0336 pos = [x yy 0.5*w dh];
0337 uicontrol('Style','text','String','Slice width (>=0, integer)',...
0338       'Units','normalized','Position',pos,'Parent',handle);
0339 pos = [x+0.5*w yy 0.5*w dh];
0340 ed12 = uicontrol('Style','edit','Units','normalized',...
0341          'Position',pos,'Parent',handle);
0342 yy = yy-dh;
0343 
0344 % Buttons
0345 pos = [x y 0.333*w dh];
0346 uicontrol('Style','pushbutton','String','OK',...
0347       'Units','normalized','Position',pos,...
0348       'Callback','vb_plotparmdlg(''push_ok'')',...
0349       'Parent',handle);
0350 
0351 pos = [x+0.333*w y 0.333*w dh];
0352 uicontrol('Style','pushbutton','String','Load ',...
0353       'Units','normalized','Position',pos,...
0354       'Callback','vb_plotparmdlg(''load_plot_parm'')',...
0355       'Parent',handle);
0356 
0357 pos = [x+0.666*w y 0.333*w dh];
0358 uicontrol('Style','pushbutton','String','Save ',...
0359       'Units','normalized','Position',pos,...
0360       'Callback','vb_plotparmdlg(''save_plot_parm'')',...
0361       'Parent',handle);
0362 
0363 % Handles
0364 plotparmdlg_variables.ed1 = ed1;
0365 plotparmdlg_variables.ed2 = ed2;
0366 plotparmdlg_variables.ed3 = ed3;
0367 plotparmdlg_variables.ed4 = ed4;
0368 plotparmdlg_variables.ed5 = ed5;
0369 plotparmdlg_variables.ed6 = ed6;
0370 plotparmdlg_variables.ed7 = ed7;
0371 plotparmdlg_variables.ed8 = ed8;
0372 plotparmdlg_variables.ed9 = ed9;
0373 plotparmdlg_variables.ed10 = ed10;
0374 plotparmdlg_variables.ed11 = ed11;
0375 plotparmdlg_variables.ed12 = ed12;
0376 plotparmdlg_variables.rb1 = rb1;
0377 plotparmdlg_variables.rb2 = rb2;
0378 plotparmdlg_variables.rb3 = rb3;
0379 plotparmdlg_variables.rb4 = rb4;
0380 plotparmdlg_variables.rb5 = rb5;
0381 plotparmdlg_variables.rb6 = rb6;
0382 plotparmdlg_variables.rb7 = rb7;
0383 
0384 set_GUI_state;
0385 previous_parm = get_GUI_state;
0386 
0387 % Wait
0388 uiwait(plotparmdlg_variables.h);
0389 
0390 % Return new parameters
0391 if ishandle(plotparmdlg_variables.h)
0392     plot_parm_new = get_GUI_state;
0393     close(handle);
0394 else
0395     % close by x icon pushing.
0396     plot_parm_new = previous_parm;
0397 end
0398 
0399 
0400 %
0401 % Initialize global variables
0402 % 2004-03-16 Taku Yoshioka
0403 %
0404 function init_global_variables(plot_parm0)
0405 
0406 global plotparmdlg_variables
0407 
0408 plot_parm = vb_set_plot_parm;
0409 f = fieldnames(plot_parm0);
0410 for i = 1:length(f)
0411   plot_parm = setfield(plot_parm,f{i},getfield(plot_parm0,f{i}));
0412 end
0413 
0414 plotparmdlg_variables.plot_parm = plot_parm;
0415 
0416 %
0417 % Callback functions for radio buttons
0418 % 2004-03-16 Taku Yoshioka
0419 %
0420 function change_cmap(i)
0421 
0422 global plotparmdlg_variables;
0423 
0424 set(plotparmdlg_variables.rb1(i),'Value',1);
0425 set(plotparmdlg_variables.rb1(2-i+1),'Value',0);
0426 
0427 function change_light(i)
0428 
0429 global plotparmdlg_variables;
0430 
0431 set(plotparmdlg_variables.rb4(i),'Value',1);
0432 set(plotparmdlg_variables.rb4(2-i+1),'Value',0);
0433 
0434 function change_display_mode(i)
0435 
0436 global plotparmdlg_variables;
0437 
0438 set(plotparmdlg_variables.rb2(i),'Value',1);
0439 set(plotparmdlg_variables.rb2(2-i+1),'Value',0);
0440 
0441 function change_priority(i)
0442 
0443 global plotparmdlg_variables;
0444 
0445 set(plotparmdlg_variables.rb3(i),'Value',1);
0446 set(plotparmdlg_variables.rb3(2-i+1),'Value',0);
0447 
0448 function change_paint(i)
0449 
0450 global plotparmdlg_variables;
0451 
0452 set(plotparmdlg_variables.rb5(i),'Value',1);
0453 set(plotparmdlg_variables.rb5(2-i+1),'Value',0);
0454 
0455 function change_LR(i)
0456 
0457 global plotparmdlg_variables;
0458 
0459 set(plotparmdlg_variables.rb6(1),'Value',0);
0460 set(plotparmdlg_variables.rb6(2),'Value',0);
0461 set(plotparmdlg_variables.rb6(3),'Value',0);
0462 set(plotparmdlg_variables.rb6(i),'Value',1);
0463 
0464 function change_normal_mode(i)
0465 
0466 global plotparmdlg_variables;
0467 
0468 set(plotparmdlg_variables.rb7(i),'Value',1);
0469 set(plotparmdlg_variables.rb7(2-i+1),'Value',0);
0470 
0471 %
0472 % Resume from uiwait
0473 % 2004-03-16 Taku Yoshioka
0474 %
0475 function push_ok
0476 
0477 global plotparmdlg_variables;
0478 
0479 uiresume(plotparmdlg_variables.h);
0480 
0481 %
0482 % Set state of GUI components
0483 % 2004-04-02 Taku Yoshioka
0484 %
0485 function set_GUI_state
0486 
0487 global plotparmdlg_variables;
0488 
0489 plot_parm = plotparmdlg_variables.plot_parm;
0490 ed1 = plotparmdlg_variables.ed1;
0491 ed2 = plotparmdlg_variables.ed2;
0492 ed3 = plotparmdlg_variables.ed3;
0493 ed4 = plotparmdlg_variables.ed4;
0494 ed5 = plotparmdlg_variables.ed5;
0495 ed6 = plotparmdlg_variables.ed6;
0496 ed7 = plotparmdlg_variables.ed7;
0497 ed8 = plotparmdlg_variables.ed8;
0498 ed9 = plotparmdlg_variables.ed9;
0499 ed10 = plotparmdlg_variables.ed10;
0500 ed11 = plotparmdlg_variables.ed11;
0501 ed12 = plotparmdlg_variables.ed12;
0502 rb1 = plotparmdlg_variables.rb1;
0503 rb2 = plotparmdlg_variables.rb2;
0504 rb3 = plotparmdlg_variables.rb3;
0505 rb4 = plotparmdlg_variables.rb4;
0506 rb5 = plotparmdlg_variables.rb5;
0507 rb6 = plotparmdlg_variables.rb6;
0508 rb7 = plotparmdlg_variables.rb7;
0509 
0510 % Font size
0511 set(ed1,'String',num2str(plot_parm.fs));
0512 
0513 % Marker size
0514 set(ed2,'String',num2str(plot_parm.ms));
0515 
0516 % Line width
0517 set(ed3,'String',num2str(plot_parm.lw));
0518 
0519 % fMRI colormap
0520 if plot_parm.cmap==1
0521   set(rb1(1),'Value',1);
0522   set(rb1(2),'Value',0);
0523 else
0524   set(rb1(1),'Value',0);
0525   set(rb1(2),'Value',1);
0526 end
0527 
0528 % Lighting
0529 if plot_parm.light==1
0530   set(rb4(1),'Value',1);
0531   set(rb4(2),'Value',0);
0532 else
0533   set(rb4(1),'Value',0);
0534   set(rb4(2),'Value',1);
0535 end
0536 
0537 % Display mode
0538 if plot_parm.wmode==1
0539   set(rb2(1),'Value',1);
0540   set(rb2(2),'Value',0);
0541 else
0542   set(rb2(1),'Value',0);
0543   set(rb2(2),'Value',1);
0544 end
0545 
0546 % Max threshold
0547 set(ed4,'String',num2str(plot_parm.wmax));
0548 
0549 % Min threshold
0550 set(ed5,'String',num2str(plot_parm.wmin));
0551 
0552 % Normalization mode
0553 if plot_parm.norm==1
0554   set(rb7(1),'Value',1);
0555   set(rb7(2),'Value',0);
0556 else
0557   set(rb7(1),'Value',0);
0558   set(rb7(2),'Value',1);
0559 end
0560 
0561 % Angle
0562 set(ed6,'String',num2str(plot_parm.angle(1)));
0563 set(ed7,'String',num2str(plot_parm.angle(2)));
0564 
0565 % Priority
0566 if plot_parm.priority==1
0567   set(rb3(1),'Value',1);
0568   set(rb3(2),'Value',0);
0569 else
0570   set(rb3(1),'Value',0);
0571   set(rb3(2),'Value',1);
0572 end
0573 
0574 % Rlabel
0575 set(ed8,'String',num2str(plot_parm.Rlabel));
0576 
0577 % zoom
0578 set(ed9,'String',num2str(plot_parm.zoom));
0579 
0580 % Paint mode
0581 if plot_parm.paint==1
0582   set(rb5(1),'Value',1);
0583   set(rb5(2),'Value',0);
0584 else
0585   set(rb5(1),'Value',0);
0586   set(rb5(2),'Value',1);
0587 end
0588 
0589 % LRflag
0590 if strcmp(plot_parm.LRflag,'LR')
0591   set(rb6(1),'Value',1);
0592   set(rb6(2),'Value',0);
0593   set(rb6(3),'Value',0);
0594 elseif strcmp(plot_parm.LRflag,'L')
0595   set(rb6(1),'Value',0);
0596   set(rb6(2),'Value',1);
0597   set(rb6(3),'Value',0);
0598 else
0599   set(rb6(1),'Value',0);
0600   set(rb6(2),'Value',0);
0601   set(rb6(3),'Value',1);
0602 end
0603 
0604 % Print ratio/size
0605 set(ed10,'String',num2str(plot_parm.print_ratio));
0606 set(ed11,'String',num2str(plot_parm.print_size));
0607 
0608 % Slice width
0609 set(ed12,'String',num2str(plot_parm.width));
0610 
0611 %
0612 % Load plot parameters
0613 % 2004-04-02 Taku Yoshioka
0614 %
0615 function load_plot_parm
0616 
0617 global plotparmdlg_variables;
0618 
0619 [pname,fname] = vb_file_select({'.plot.mat'});
0620 
0621 if isempty(fname)
0622     % cancel
0623     return;
0624 else
0625     fname = fname{1};
0626     load([pname filesep fname],'plot_parm');
0627     plotparmdlg_variables.plot_parm = plot_parm;
0628     set_GUI_state;
0629 end
0630 
0631 %
0632 % Save plot parameters
0633 % 2004-04-02 Taku Yoshioka
0634 %
0635 function save_plot_parm
0636 
0637 [fname,pname] = uiputfile({'*.plot.mat';'Plot mat(*.plot.mat)'}, 'Save as', 'Untitled.plot.mat');
0638 if (isnumeric(fname)) && (fname == 0)
0639     % cancel
0640     return;
0641 else
0642     plot_parm = get_GUI_state; 
0643     vb_fsave([pname filesep fname],'plot_parm');
0644     msgbox('File saved.', 'msg')
0645 end
0646 
0647 %
0648 % Get GUI state
0649 % 2004-04-08 Taku Yoshioka
0650 %
0651 function plot_parm_new = get_GUI_state
0652 
0653 global plotparmdlg_variables;
0654 
0655 ed1 = plotparmdlg_variables.ed1;
0656 ed2 = plotparmdlg_variables.ed2;
0657 ed3 = plotparmdlg_variables.ed3;
0658 ed4 = plotparmdlg_variables.ed4;
0659 ed5 = plotparmdlg_variables.ed5;
0660 ed6 = plotparmdlg_variables.ed6;
0661 ed7 = plotparmdlg_variables.ed7;
0662 ed8 = plotparmdlg_variables.ed8;
0663 ed9 = plotparmdlg_variables.ed9;
0664 ed10 = plotparmdlg_variables.ed10;
0665 ed11 = plotparmdlg_variables.ed11;
0666 ed12 = plotparmdlg_variables.ed12;
0667 rb1 = plotparmdlg_variables.rb1;
0668 rb2 = plotparmdlg_variables.rb2;
0669 rb3 = plotparmdlg_variables.rb3;
0670 rb4 = plotparmdlg_variables.rb4;
0671 rb5 = plotparmdlg_variables.rb5;
0672 rb6 = plotparmdlg_variables.rb6;
0673 rb7 = plotparmdlg_variables.rb7;
0674 
0675 plot_parm_new = vb_set_plot_parm; % default parameters
0676 
0677 fs = str2num(get(ed1,'String'));
0678 if isnumeric(fs) & fs>0 & fs<=100, 
0679   plot_parm_new.fs = fs; 
0680 end
0681 
0682 ms = str2num(get(ed2,'String'));
0683 if isnumeric(ms) & ms>0 & ms<=100, 
0684   plot_parm_new.ms = ms; 
0685 end
0686 
0687 lw = str2num(get(ed3,'String'));
0688 if isnumeric(lw) & lw>0 & lw<=100, 
0689   plot_parm_new.lw = lw; 
0690 end
0691 
0692 wmax = str2num(get(ed4,'String'));
0693 if isnumeric(wmax) & wmax>0.0 & wmax<=1.0, 
0694   plot_parm_new.wmax = wmax; 
0695 else
0696   wmax = plot_parm_new.wmax;
0697 end
0698 
0699 wmin = str2num(get(ed5,'String'));
0700 if isnumeric(wmin) & wmin>0.0 & wmin<=wmax, 
0701   plot_parm_new.wmin = wmin; 
0702 else
0703   plot_parm_new.wmin = 0.1*wmax;
0704 end
0705 
0706 angle1 = str2num(get(ed6,'String'));
0707 if isnumeric(angle1)
0708   plot_parm_new.angle(1) = angle1;
0709 end
0710 
0711 angle2 = str2num(get(ed7,'String'));
0712 if isnumeric(angle2)
0713   plot_parm_new.angle(2) = angle2;
0714 end
0715 
0716 Rlabel = str2num(get(ed8,'String'));
0717 if isnumeric(Rlabel) & Rlabel>=1.0 & Rlabel<=4.0
0718   plot_parm_new.Rlabel = Rlabel;
0719 end
0720 
0721 z = str2num(get(ed9,'String'));
0722 if isnumeric(z) & z>0 & z<=100.0
0723   plot_parm_new.zoom = z;
0724 end
0725 
0726 print_ratio = str2num(get(ed10,'String'));
0727 if isnumeric(print_ratio) & print_ratio>0
0728   plot_parm_new.print_ratio = print_ratio; 
0729 end
0730 
0731 print_size = str2num(get(ed11,'String'));
0732 if isnumeric(print_size) & print_size>0.0 
0733   plot_parm_new.print_size = print_size; 
0734 end
0735 
0736 width = ceil(str2num(get(ed12,'String')));
0737 if isnumeric(width) & width>=0 
0738   plot_parm_new.width = width; 
0739 end
0740 
0741 if get(rb1(1),'Value')
0742   plot_parm_new.cmap = 1;
0743 else
0744   plot_parm_new.cmap = 2;
0745 end
0746 
0747 if get(rb4(1),'Value')
0748   plot_parm_new.light = 1;
0749 else
0750   plot_parm_new.light = 2;
0751 end
0752 
0753 if get(rb2(1),'Value')
0754   plot_parm_new.wmode = 1;
0755 else
0756   plot_parm_new.wmode = 2;
0757 end
0758 
0759 if get(rb3(1),'Value')
0760   plot_parm_new.priority = 1;
0761 else
0762   plot_parm_new.priority = 2;
0763 end
0764 
0765 if get(rb5(1),'Value')
0766   plot_parm_new.paint = 1;
0767 else
0768   plot_parm_new.paint = 2;
0769 end
0770 
0771 if get(rb6(1),'Value')
0772   plot_parm_new.LRflag = 'LR';
0773 elseif get(rb6(2),'Value')
0774   plot_parm_new.LRflag = 'L';
0775 else
0776   plot_parm_new.LRflag = 'R';
0777 end
0778 
0779 if get(rb7(1),'Value')
0780   plot_parm_new.norm = 1;
0781 else
0782   plot_parm_new.norm = 2;
0783 end
0784 
0785 % editable in this GUI in the future?
0786 plot_parm_new.Jmax_ratio = plotparmdlg_variables.plot_parm.Jmax_ratio;
0787 plot_parm_new.Jmin_ratio = plotparmdlg_variables.plot_parm.Jmin_ratio;

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