function vizicq4_gui %%% %%% Build the VIZICQ4 interface %%% % Set Defaults fontsize=get(0,'DefaultTextFontSize'); set(0,'DefaultTextFontWeight','bold') set(0,'DefaultAxesFontWeight','bold') % Set new figure; ScreenUnits = get(0,'Units'); set(0,'Unit','pixels'); ScreenPos = get(0,'ScreenSize'); set(0,'Unit',ScreenUnits); Carolina_Blue=[0.6324 0.7650 0.8000]; Figpos=[.15 .15 .8 .825].*ScreenPos+[0.1*ScreenPos(3:4) 0 0]; vizicq4figure=figure('Colormap',jet(16),... 'HandleVisibility','on',... 'Visible','off',... 'Position',Figpos,... 'MenuBar','figure',... 'Units','pixels',... 'IntegerHandle','off',... 'Renderer','zbuffer',... 'RendererMode','auto',... 'Color',Carolina_Blue,... 'Interruptible','on',... 'WindowButtonDownFcn',... 'vizicq4_guts(''ButtonDownFcn'')'); set(vizicq4figure,'DefaultAxesFontWeight','bold') set(vizicq4figure,'DefaultUIControlFontWeight','bold') set(vizicq4figure,'Pointer','watch') drawnow set(vizicq4figure,'Tag','VIZICQ4_Figure',... 'NumberTitle','off',... 'Name','VIZICQ4 Version 1.2',... 'Resize','on',... 'Visible','on',... 'KeyPressFcn','',... 'Units','pixels',... 'UserData',[]); set(vizicq4figure,'Pointer','arrow') drawnow % Create the target axes for drawing grid axwidth = 0.8*Figpos(3); axheight= axwidth/1.5/Figpos(4); axstdpos = [0.075 0.14 0.7 axheight+.06]; vizicq4gridaxes=axes('Parent',vizicq4figure,... 'Position',axstdpos,... 'XColor','k',... 'Box','on',... 'YColor','k',... 'Color','w',... 'DrawMode','fast',... 'XLimMode','auto',... 'YLimMode','auto',... 'XGrid','off',... 'YGrid','off',... 'XTickMode','auto',... 'YTickMode','auto',... 'Units','normalized',... 'DataAspectRatio',[1 1 1],... 'DataAspectRatioMode','auto',... 'ButtonDownFcn','',... 'Visible','on',... 'Tag','VIZICQ4_Grid_Axes'); title('Grid Axes','FontSize',fontsize+5) % Save visible axes position: setuprop(vizicq4gridaxes,'axstdpos',axstdpos) % Create a duplicate axes to hold the slice data vizicq4sliceaxes=axes('Parent',vizicq4figure,... 'Units','normalized',... 'Position',[1.1 1.1 axstdpos(3) axstdpos(4)],... 'XColor','k',... 'Box','on',... 'YColor','k',... 'Color','w',... 'DrawMode','fast',... 'XLimMode','auto',... 'YLimMode','auto',... 'ZLimMode','auto',... 'XGrid','off',... 'YGrid','off',... 'ZGrid','off',... 'XTickMode','auto',... 'YTickMode','auto',... 'Units','normalized',... 'DataAspectRatio',[1 1 1],... 'DataAspectRatioMode','auto',... 'ButtonDownFcn','',... 'Visible','off',... 'Tag','VIZICQ4_Slice_Axes'); invisaxstdpos=[1.1 1.1 axstdpos(3) axstdpos(4)]; setuprop(vizicq4sliceaxes,'invisaxstdpos',invisaxstdpos) title('Slice Axes','FontSize',fontsize+5) context_menus; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%% FIRST-ROW MENUS IN ADDITION TO THE DEFAULT MENUBAR %%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Options menu: opt_menu = uimenu(vizicq4figure,'Label','&Axis',... 'Accelerator','O',... 'Tag','VIZICQ4_Options_Menu',... 'Enable','on'); uimenu(opt_menu,'Label','&Grid On/Off',... 'Accelerator','G',... 'CallBack','grid'); temp=uimenu(opt_menu,'Label','Axes --->>>',... 'Accelerator','A',... 'Separator','on'); uimenu(temp,'Label','&Axes Limits...',... 'Accelerator','A',... 'Separator','on',... 'CallBack',''); uimenu(temp,'Label','Axes &Square ',... 'Accelerator','S',... 'CallBack','axis(''square'')'); uimenu(temp,'Label','Axes &Tight ',... 'Accelerator','T',... 'CallBack','axis(''tight'')'); uimenu(temp,'Label','Axes &Normal',... 'Accelerator','N',... 'CallBack','axis(''normal'')'); uimenu(temp,'Label','Axes &Equal',... 'Accelerator','E',... 'CallBack','axis(''equal'')'); uimenu(temp,'Label','Axes On',... 'CallBack','axis(''on'')'); uimenu(temp,'Label','Axes Off',... 'CallBack','axis(''off'')'); uimenu(opt_menu,'Label','WYSIWYG',... 'Interruptible','on',... 'CallBack','wysiwyg',... 'Separator','on','Enable','on'); uimenu(opt_menu,'Label','HELP',... 'Interruptible','on',... 'Separator','on',... 'CallBack','vizicq4_guts(''Help'',''OptionsMenu'')',... 'Enable','off'); clear_menu= uimenu(vizicq4figure,'Label','&Clear',... 'Accelerator','C',... 'Tag','VIZICQ4_Clear_Menu',... 'UserData',[],'Enable','on'); uimenu(clear_menu,'Label','Vectors',... 'CallBack','vizicq4_guts(''Clear'',''Vectors'')'); uimenu(clear_menu,'Label','Volumes',... 'CallBack','vizicq4_guts(''Clear'',''Volumes'')'); uimenu(clear_menu,'Label','Horz. Slices',... 'CallBack','vizicq4_guts(''Clear'',''HSlices'')'); uimenu(clear_menu,'Label','Vert. Slices',... 'CallBack','vizicq4_guts(''Clear'',''VSlices'')'); colormenu; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%% FIRST-ROW ITEMS %%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % first row backgroud ui frame uicontrol(vizicq4figure,'Style','frame',... 'Units','normalized',... 'Position',[0 0.96 1 .04]); % Current Domain: uicontrol(vizicq4figure,'Style','text',... 'Units','normalized',... 'HorizontalAlignment','right',... 'Position',[0.005 .964 .1 .025],... 'String','FEM Domain: ',... 'ToolTipString','Enter FEM Domain Name'); uicontrol(vizicq4figure,'Style','edit',... 'Units','normalized',... 'Position',[.105 .9625 .18 .035],... 'HorizontalAlignment','center',... 'BackgroundColor','w',... 'Enable','on',... 'Tag','VIZICQ4_Current_Domain',... 'Callback','vizicq4_guts(''Load_Grid'')',... 'String', '',... 'UserData','none'); uicontrol(vizicq4figure,'Style','text',... 'Units','normalized',... 'HorizontalAlignment','right',... 'Position',[0.3 .964 .09 .025],... 'String','Z-Contours: ',... 'ToolTipString','Bathymetry Contours'); uicontrol(vizicq4figure,'Style','edit',... 'Units','normalized',... 'Position',[.39 .967 .15 .025],... 'HorizontalAlignment','center',... 'BackgroundColor','w',... 'Enable','on',... 'Tag','VIZICQ4_Contour_Vals',... 'Callback','vizicq4_guts(''ZContours'')',... 'ToolTipString','Bathymetry Contours',... 'String', 'linspace(zmin,zmax,7)',... 'UserData','none'); uicontrol(vizicq4figure,'Style','push',... 'Units','normalized',... 'Position',[.575 .9625 .05 .035],... 'HorizontalAlignment','center',... 'Enable','on',... 'Callback','vizicq4_guts(''LabCont'')',... 'ToolTipString','Label Contours',... 'String', 'LabC',... 'UserData','none',... 'Tag','VIZICQ4_LabCont'); uicontrol(vizicq4figure,'Style','push',... 'Units','normalized',... 'Position',[.625 .9625 .05 .035],... 'HorizontalAlignment','center',... 'Enable','on',... 'Callback','vizicq4_guts(''DelCont'')',... 'ToolTipString','Delete Contours',... 'String', 'DelC',... 'UserData','none',... 'Tag','VIZICQ4_DelCont'); % Create the ShipTrack button uicontrol(vizicq4figure,'Style','push','String','ShipTrack',... 'Tag','VIZICQ4_ShipTrack_Popup_Button',... 'CallBack','vizicq4_ShipTrack(''Pop'')',... 'Units','normalized',... 'Position',[.70 .9625 .075 .035],... 'ForeGroundColor','k','Enable','off'); % Create the Volume button uicontrol(vizicq4figure,'Style','push','String','Volume',... 'Tag','VIZICQ4_Volume_Popup_Button',... 'CallBack','vizicq4_volume(''Pop'')',... 'Units','normalized',... 'Position',[.775 .9625 .075 .035],... 'ForeGroundColor','k'); % Create the Slicer button uicontrol(vizicq4figure,'Style','push','String','Slice',... 'Tag','VIZICQ4_Slicer_Popup_Button',... 'CallBack','vizicq4_slicer(''Pop'')',... 'Units','normalized',... 'Position',[.85 .9625 .075 .035],... 'ForeGroundColor','k'); % Create the Toggle Axes button uicontrol(vizicq4figure,'Style','push',... 'String','Toggle Axes',... 'Tag','VIZICQ4_Toggle_Axes_Button',... 'CallBack','vizicq4_guts(''Toggle_Axes'')',... 'Units','normalized',... 'Position',[.925 .9625 .075 .035],... 'ForeGroundColor','k'); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%% SECOND-ROW ITEMS %%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % first row backgroud ui frame uicontrol(vizicq4figure,'Style','frame',... 'Units','normalized',... 'Position',[0 0.92 1 .04]); % Current directory: uicontrol(vizicq4figure,'Style','text',... 'Units','normalized',... 'HorizontalAlignment','right',... 'Position',[0.005 .9225 .1 .03],... 'String','Forecast Dir: ',... 'ToolTipString','Enter Forecast Directory'); cur_dir=pwd; uicontrol(vizicq4figure,'Style','edit',... 'Units','normalized',... 'Position',[.105 .9225 .5 .035],... 'HorizontalAlignment','left',... 'BackgroundColor','w',... 'Enable','on',... 'Tag','VIZICQ4_Current_Icq4_Dir',... 'Callback',... 'vizicq4_guts(''Load_Icq4'',''Directory'')',... 'String',cur_dir,... 'UserData','none'); % Current Icq4 file name: uicontrol(vizicq4figure,'Style','text',... 'Units','normalized',... 'HorizontalAlignment','right',... 'Position',[0.63 .9225 .15 .03],... 'String','Icq4 Name: ',... 'ToolTipString','Enter QUODDY4 .icq4 file name'); uicontrol(vizicq4figure, 'Style','edit',... 'Units','normalized',... 'Position',[.78 .9225 .18 .035],... 'HorizontalAlignment','left',... 'BackgroundColor','w',... 'Enable','on',... 'Tag','VIZICQ4_Current_Icq4_Name',... 'Callback','vizicq4_guts(''Load_Icq4'',''Name'')',... 'String', '',... 'UserData','none'); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%% BOTTOM OF FIGURE ITEMS %%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Info Line display: uicontrol(vizicq4figure,'Style','frame',... 'Units','normalized',... 'Position',[0 0 .44 .06]); uicontrol(vizicq4figure,'Style','text',... 'Units','normalized',... 'HorizontalAlignment','right',... 'Position',[.02 .005 .07 .04],... 'String','Info:',... 'Tag','VIZICQ4_Info'); uicontrol(vizicq4figure,'Style','text',... 'Units','normalized',... 'Position',[.10 .01 .33 .04],... 'HorizontalAlignment','left',... 'Value',1,... 'Tag','VIZICQ4_Info_Text',... 'BackGroundColor','w',... 'String',' Load a FEM Domain'); % Error Line display: uicontrol(vizicq4figure,'Style','frame',... 'Units','normalized',... 'Position',[.44 0 .42 .06]); uicontrol(vizicq4figure,'Style','text',... 'Units','normalized',... 'HorizontalAlignment','right',... 'Position',[.46 .005 .07 .04],... 'ForeGroundColor','r',... 'String','Error:',... 'Tag','VIZICQ4_Error',... 'Visible','on'); uicontrol(vizicq4figure,'Style','text',... 'Units','normalized',... 'Position',[.54 .01 .31 .04],... 'HorizontalAlignment','left',... 'Value',1,... 'Tag','VIZICQ4_Error_Text',... 'String',' No Errors PLEASE!!',... 'BackGroundColor','w',... 'ForeGroundColor','r'); % Exit button uicontrol(vizicq4figure,'Style','frame',... 'Units','normalized',... 'Position',[0.86 0 .14 .06]); uicontrol(vizicq4figure,'Style','pushbutton',... 'Interruptible','on',... 'Units','normalized',... 'Position',[.88 .01 .1 .04],... 'ToolTipString','Terminate VIZICQ4',... 'Callback','vizicq4_guts(''Terminate'')',... 'String','Exit'); % Set up "Select icq4 variable" section uicontrol(vizicq4figure,'Style','frame',... 'Units','normalized',... 'Position',[.81 .25 .15 .6]); uicontrol(vizicq4figure,'Style','text',... 'Units','normalized',... 'Position',[.83 .795 .11 .05],... 'String','Select State Var',... 'ForeGroundColor','r',... 'BackGroundColor','w'); % Define mutually exclusive radio buttons. varlist={'HMID';'UMID';'VMID';'HOLD';'UOLD';'VOLD';'ZMID';'ZOLD', 'UZMID';'VZMID';'WZMID';'Q2MID';'Q2LMID';'TMPMID';'SALMID';'RHO'}; dy=.0; buttonwidth=.09; buttonheight=.03; ystart=.76; xstart=.84; for i=1:length(varlist) hvar(i)=uicontrol(vizicq4figure,'Style','radio',... 'Units','normalized',... 'Position',... [xstart ystart-(i-1)*(buttonheight+dy) buttonwidth buttonheight],... 'String',varlist{i},... 'HorizontalAlignment','left',... 'Enable','off','Tag','VIZICQ4_icq4_select_button'); end for i=1:length(varlist) set(hvar(i),'UserData',hvar(:,[1:(i-1),(i+1):length(varlist)])) end CALL1=['me=get(gcf,''CurrentObject'');',... 'if(get(me,''Value'')==1),',... 'set(get(me,''UserData''),''Value'',0),',... 'else,',... 'set(me,''Value'',1),',... 'end']; set(hvar,'CallBack',CALL1); % Unset the Tags of the 2-D fields so they won't be found. Later % versions will use these. set(hvar(1:8),'Tag','') % Set the Tag for the density button separately % set(hvar(length(varlist)),'Tag','VIZICQ4_icq4_select_button_RHO') % icq4 info button uicontrol(vizicq4figure,'Style','push',... 'String','Icq4 Info',... 'Tag','VIZICQ4_Toggle_Axes_Button',... 'CallBack','vizicq4_guts(''Icq4_Info'')',... 'Units','normalized',... 'Position',[.83 .26 .12 .04],... 'ForeGroundColor','k'); % Build the "make_slice" gui vizicq4_make_volume_popup; vizicq4_make_slicer_popup; make_icq4_info_popup; % Before exiting, store invisaxstdpos and axstdpos % invisaxstdpos is hung from the VIZICQ4_LabCont UserData VIZICQ4_LabCont=findobj(vizicq4figure,'Type','uicontrol',... 'Tag','VIZICQ4_LabCont'); set(VIZICQ4_LabCont,'UserData',invisaxstdpos); % axstdpos is hung from the VIZICQ4_DelCont VIZICQ4_DelCont=findobj(vizicq4figure,'Type','uicontrol',... 'Tag','VIZICQ4_DelCont'); set(VIZICQ4_DelCont,'UserData',axstdpos); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%% vizicq4_make_slicer_popup %%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function vizicq4_make_slicer_popup % Figure defaults fontsize=get(0,'DefaultTextFontSize'); set(0,'DefaultTextFontWeight','bold') %%%% Build Volume Popup sfig=figure('Position',[107 410 746 248],... 'IntegerHandle','off',... 'NumberTitle','off',... 'MenuBar','none',... 'Name','VIZICQ4 1.2 Slicer',... 'Resize','off',... 'Units','pixels',... 'Tag','VIZICQ4_Slicer_Fig',... 'CloseRequestFcn','closereq',... 'Visible','off'); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Horz Slice Selection %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% uicontrol(sfig,'Style','frame',... 'Units','normalized',... 'Position',[0 .2 .5 .8],... 'Units','pixels'); uicontrol(sfig,'Style','text',... 'String','Horizontal',... 'ForeGroundColor','k',... 'Units','normalized',... 'FontSize',fontsize+2,... 'FontWeight','bold',... 'Position',[.05 .89 .4 .1],... 'HorizontalAlignment','center',... 'Enable','on') uicontrol(sfig,'Style','text',... 'String','Z-val:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.01 .72 .1 .07],... 'HorizontalAlignment','center',... 'Enable','on') uicontrol(sfig,'Style','edit',... 'String','<>',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.1 .72 .1 .07],... 'HorizontalAlignment','center',... 'Enable','on',... 'Tag','VIZICQ4_Slice_Z') uicontrol(sfig,'Style','frame',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.07 .25 .15 .1],... 'Enable','on') uicontrol(sfig,'Style','radio',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.075 .26 .025 .08],... 'HorizontalAlignment','center',... 'Enable','on',... 'Tag','VIZICQ4_Slice_HVectors') uicontrol(sfig,'Style','text',... 'String','Vectors',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.1 .26 .1 .07],... 'Tag','') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.30 .25 .15 .1],... 'Units','pixels',... 'String','Make Slice',... 'ToolTipString','',... 'Enable','on',... 'Callback','vizicq4_slicer(''MakeHSlice'')',... 'Tag','','Enable','on') %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Transect Selection %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% uicontrol(sfig,'Style','frame',... 'Units','normalized',... 'Position',[.5 .2 .5 .8],... 'Units','pixels'); uicontrol(sfig,'Style','text',... 'String','Vertical',... 'ForeGroundColor','k',... 'Units','normalized',... 'FontSize',fontsize+2,... 'FontWeight','bold',... 'Position',[.55 .89 .4 .1],... 'HorizontalAlignment','center',... 'Enable','on') x1=.51;x2=.62; dx=.1; y1=.8; dy=.08; dy1=.07;dy2=.08; POS=[x1 y1-0*dy dx dy1 x2 y1-0*dy dx dy2 x1 y1-1*dy dx dy1 x2 y1-1*dy dx dy2 x1 y1-2*dy dx dy1 x2 y1-2*dy dx dy2 x1 y1-3*dy dx dy1 x2 y1-3*dy dx dy2 x1 y1-4*dy dx dy1 x2 y1-4*dy dx dy2 x1 y1-5*dy dx dy1 x2 y1-5*dy dx dy2]; uicontrol(sfig,'Style','text',... 'String','X 1:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',POS(1,:),... 'HorizontalAlignment','center',... 'Enable','on') uicontrol(sfig,'Style','edit',... 'String','<>',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',POS(2,:),... 'HorizontalAlignment','center',... 'Enable','off',... 'Tag','VIZICQ4_Slice_X1') uicontrol(sfig,'Style','text',... 'String','Y 1:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',POS(3,:),... 'HorizontalAlignment','center') uicontrol(sfig,'Style','edit',... 'String','<>',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',POS(4,:),... 'HorizontalAlignment','center',... 'Enable','off',... 'Tag','VIZICQ4_Slice_Y1') uicontrol(sfig,'Style','text',... 'String','X 2:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',POS(5,:),... 'HorizontalAlignment','center') uicontrol(sfig,'Style','edit',... 'String','<>',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',POS(6,:),... 'HorizontalAlignment','center',... 'Enable','off',... 'Tag','VIZICQ4_Slice_X2') uicontrol(sfig,'Style','text',... 'String','Y 2:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',POS(7,:),... 'HorizontalAlignment','center',... 'Enable','on') uicontrol(sfig,'Style','edit',... 'String','<>',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',POS(8,:),... 'HorizontalAlignment','center',... 'Enable','off',... 'Tag','VIZICQ4_Slice_Y2') uicontrol(sfig,'Style','text',... 'String','DL:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',POS(9,:),... 'HorizontalAlignment','center',... 'Enable','on') uicontrol(sfig,'Style','edit',... 'String','2000',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',POS(10,:),... 'ToolTipString','Sample Spacing in meters',... 'HorizontalAlignment','center',... 'Enable','off',... 'Tag','VIZICQ4_Slice_DL') uicontrol(sfig,'Style','text',... 'String','NCol:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',POS(11,:),... 'HorizontalAlignment','center',... 'Enable','on') uicontrol(sfig,'Style','edit',... 'String','16',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',POS(12,:),... 'ToolTipString','Number of color bands',... 'HorizontalAlignment','center',... 'Enable','off',... 'Tag','VIZICQ4_Slice_NC') uicontrol(sfig,'Style','frame',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.57 .25 .15 .1]) uicontrol(sfig,'Style','radio',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.575 .26 .025 .08],... 'HorizontalAlignment','center',... 'Enable','on',... 'Tag','VIZICQ4_Slice_VVectors') uicontrol(sfig,'Style','text',... 'String','Vectors',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.6 .26 .1 .07]) uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.80 .75 .15 .1],... 'Units','pixels',... 'String','X-Slice Mouse',... 'ToolTipString','Cut Constant X',... 'Enable','on',... 'Callback','vizicq4_slicer(''SelRegion'',''XSlice'')',... 'Tag','','Enable','on') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.80 .65 .15 .1],... 'Units','pixels',... 'String','Y-Slice Mouse',... 'ToolTipString','Cut Constant Y',... 'Enable','on',... 'Callback','vizicq4_slicer(''SelRegion'',''YSlice'')',... 'Tag','','Enable','on') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.80 .55 .15 .1],... 'Units','pixels',... 'String','Arbitrary Slice',... 'ToolTipString','Arbitrary Horiz. Slice',... 'Enable','on',... 'Callback','vizicq4_slicer(''SelRegion'',''ArbSlice'')',... 'Tag','','Enable','on') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.80 .25 .15 .1],... 'Units','pixels',... 'String','Make Slice',... 'ToolTipString','',... 'Enable','on',... 'Callback','vizicq4_slicer(''MakeVSlice'')',... 'Tag','','Enable','on') % Frame at bottom of fig uicontrol(sfig,'Style','frame',... 'Units','normalized',... 'Position',[0 0 1 .2],... 'Units','pixels'); uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.9 .05 .09 .1],... 'Units','pixels',... 'String','Close',... 'Callback','vizicq4_slicer(''Close'')',... 'ToolTipString','Close Volume Popup') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.8 .05 .09 .1],... 'Units','pixels',... 'String','Rotate On',... 'Callback','vizicq4_slicer(''Rotate_Toggle'')',... 'ToolTipString','Activate 3-D Rotation',... 'Tag','VIZICQ4_Slicer_Rotation') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.7 .05 .09 .1],... 'Units','pixels',... 'String','Reset 2D',... 'Callback','vizicq4_slicer(''Reset_View'')',... 'ToolTipString','Restore 2-D view') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.6 .05 .09 .1],... 'Units','pixels',... 'String','Colorbar',... 'Callback','vizicq4_slicer(''Colorbar'')',... 'ToolTipString','Place Colorbar') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.5 .05 .09 .1],... 'Units','pixels',... 'String','Del 1 Slice',... 'Callback','vizicq4_slicer(''DelSlice'',''one'')',... 'ToolTipString','Delete A Slice') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.4 .05 .09 .1],... 'Units','pixels',... 'String','DelAllSlice',... 'Callback','vizicq4_slicer(''DelSlice'',''all'')',... 'ToolTipString','Delete All Slices') uicontrol(sfig,'Style','text',... 'Units','normalized',... 'Position',[.12 .075 .1 .1],... 'Units','pixels',... 'String','Shading:',... 'HorizontalAlignment','left') uicontrol(sfig,'Style','radio',... 'Units','normalized',... 'Position',[.01 .02 .1 .1],... 'Units','pixels',... 'String','Interp',... 'Callback','vizicq4_slicer(''Shading'',''Interp'')',... 'ToolTipString','Interpolated Shading',... 'Tag','VIZICQ4_Slicer_Shading_Interp') uicontrol(sfig,'Style','radio',... 'Units','normalized',... 'Position',[.11 .02 .1 .1],... 'Units','pixels',... 'String','Flat',... 'Callback','vizicq4_slicer(''Shading'',''Flat'')',... 'ToolTipString','Flat Shading',... 'Tag','VIZICQ4_Slicer_Shading_Flat') uicontrol(sfig,'Style','radio',... 'Units','normalized',... 'Position',[.21 .02 .1 .1],... 'Units','pixels',... 'String','Faceted',... 'Callback','vizicq4_slicer(''Shading'',''Faceted'')',... 'ToolTipString','Faceted Shading',... 'Tag','VIZICQ4_Slicer_Shading_Faceted') %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%% vizicq4_make_volume_popup %%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function vizicq4_make_volume_popup % Figure defaults fontsize=get(0,'DefaultTextFontSize'); set(0,'DefaultTextFontWeight','bold') %%%% Build Volume Popup sfig=figure('Position',[107 410 746 248],... 'IntegerHandle','off',... 'NumberTitle','off',... 'MenuBar','none',... 'Name','VIZICQ4 1.2 Volume Popup',... 'Resize','off',... 'Units','pixels',... 'Tag','VIZICQ4_Volume_Fig',... 'CloseRequestFcn','closereq',... 'Visible','off'); global MAP_SCALAR_EXIST if ~MAP_SCALAR_EXIST VIZICQ4_Volume_Popup_Button=findobj(0,'Tag','VIZICQ4_Volume_Popup_Button'); set(VIZICQ4_Volume_Popup_Button,'Enable','off') end %%%%%%%%%%%%%%%%%%%%%%%%%% % FD Slice FRAME %%%%%%%%%%%%%%%%%%%%%%%%%% uicontrol(sfig,'Style','frame',... 'Units','normalized',... 'Position',[.0 .2 .5 .8],... 'Units','pixels'); uicontrol(sfig,'Style','text',... 'String','FD Discretization',... 'FontSize',fontsize+2,... 'ForeGroundColor','k',... 'FontWeight','bold',... 'Units','normalized',... 'Position',[.125 .90 .2 .075]) uicontrol(sfig,'Style','text',... 'String','Discretization',... 'ForeGroundColor','k',... 'FontWeight','bold',... 'Units','normalized',... 'Position',[.025 .80 .15 .075]) uicontrol(sfig,'Style','text',... 'String','Nx:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.01 .65 .05 .075]) uicontrol(sfig,'Style','edit',... 'String','50',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.08 .65 .05 .08],... 'BackgroundColor','w',... 'Tag','VIZICQ4_Nx') uicontrol(sfig,'Style','text',... 'String','Ny:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.01 .55 .05 .075]) uicontrol(sfig,'Style','edit',... 'String','50',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.08 .55 .05 .08],... 'BackgroundColor','w',... 'Tag','VIZICQ4_Ny') uicontrol(sfig,'Style','text',... 'String','Nz:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.01 .45 .05 .075]) uicontrol(sfig,'Style','edit',... 'String','10',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.08 .45 .05 .08],... 'BackgroundColor','w',... 'Tag','VIZICQ4_Nz') % slice coords uicontrol(sfig,'Style','text',... 'String','Integer Slice Locations',... 'ForeGroundColor','k',... 'FontWeight','bold',... 'Units','normalized',... 'Position',[.25 .80 .2 .075]) uicontrol(sfig,'Style','text',... 'String','Ix:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.25 .65 .04 .075]) uicontrol(sfig,'Style','edit',... 'String','25',... 'ForeGroundColor','k',... 'BackgroundColor','w',... 'Units','normalized',... 'Position',[.29 .65 .1 .08],... 'BackgroundColor','w',... 'Tag','VIZICQ4_Ix') uicontrol(sfig,'Style','push',... 'String','GO!!',... 'ForeGroundColor','r',... 'Units','normalized',... 'Position',[.4 .65 .075 .08],... 'Tag','VIZICQ4_Ix_GO',... 'CallBack','vizicq4_volume(''MakeVolume'',''X'')') uicontrol(sfig,'Style','text',... 'String','Iy:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.25 .55 .04 .075]) uicontrol(sfig,'Style','edit',... 'String','25',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.29 .55 .10 .08],... 'BackgroundColor','w',... 'Tag','VIZICQ4_Iy') uicontrol(sfig,'Style','push',... 'String','GO!!',... 'ForeGroundColor','r',... 'Units','normalized',... 'Position',[.4 .55 .075 .08],... 'Tag','VIZICQ4_Iy_GO',... 'CallBack','vizicq4_volume(''MakeVolume'',''Y'')') uicontrol(sfig,'Style','text',... 'String','Iz:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.25 .45 .04 .075]) uicontrol(sfig,'Style','edit',... 'String','5',... 'ForeGroundColor','k',... 'BackgroundColor','w',... 'Units','normalized',... 'Position',[.29 .45 .10 .08],... 'Tag','VIZICQ4_Iz') uicontrol(sfig,'Style','push',... 'String','GO!!',... 'ForeGroundColor','r',... 'Units','normalized',... 'Position',[.4 .45 .075 .08],... 'Tag','VIZICQ4_Iz_GO',... 'CallBack','vizicq4_volume(''MakeVolume'',''Z'')') uicontrol(sfig,'Style','push',... 'String','GO ALL!!',... 'ForeGroundColor','r',... 'Units','normalized',... 'Position',[.4 .35 .075 .08],... 'Tag','VIZICQ4_ALL_GO',... 'CallBack','vizicq4_volume(''MakeVolume'',''ALL'')') % PushButtons uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.22 .21 .15 .1],... 'Units','pixels',... 'String','Map Scalar',... 'ToolTipString','Map Scalar',... 'Enable','on',... 'CallBack','vizicq4_volume(''MapScalar'')',... 'Tag','VIZICQ4_Map_Scalar') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.01 .21 .2 .1],... 'Units','pixels',... 'String','COMP. BASIS',... 'ToolTipString','Compute Interp Basis',... 'Enable','on',... 'CallBack','vizicq4_volume(''CompBasis'')',... 'Tag','VIZICQ4_Comp_Basis') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.395 .21 .10 .1],... 'Units','pixels',... 'String','HELP',... 'ToolTipString','HELP on VOLUME',... 'Enable','off',... 'CallBack','',... 'Tag','') %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Region Selection %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% uicontrol(sfig,'Style','frame',... 'Units','normalized',... 'Position',[.5 .2 .5 .8],... 'Units','pixels'); uicontrol(sfig,'Style','text',... 'String','Select Region',... 'ForeGroundColor','k',... 'FontSize',fontsize+2,... 'FontWeight','bold',... 'Units','normalized',... 'Position',[.51 .90 .47 .07],... 'HorizontalAlignment','center',... 'Enable','on') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.52 .75 .15 .1],... 'Units','pixels',... 'String','Select Region',... 'ToolTipString','',... 'Enable','on',... 'Callback','vizicq4_volume(''SelRegion'')',... 'Tag','','Enable','on') uicontrol(sfig,'Style','text',... 'String','X-Min:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.51 .65 .1 .07],... 'HorizontalAlignment','center',... 'Enable','on') uicontrol(sfig,'Style','edit',... 'String','<>',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.62 .65 .1 .07],... 'HorizontalAlignment','center',... 'Enable','off',... 'Tag','VIZICQ4_Region_Xmin') uicontrol(sfig,'Style','text',... 'String','X-Max:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.51 .55 .1 .07],... 'HorizontalAlignment','center') uicontrol(sfig,'Style','edit',... 'String','<>',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.62 .55 .1 .07],... 'HorizontalAlignment','center',... 'Enable','off',... 'Tag','VIZICQ4_Region_Xmax') uicontrol(sfig,'Style','text',... 'String','Y-Min:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.51 .45 .1 .07],... 'HorizontalAlignment','center') uicontrol(sfig,'Style','edit',... 'String','<>',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.62 .45 .1 .07],... 'HorizontalAlignment','center',... 'Enable','off',... 'Tag','VIZICQ4_Region_Ymin') uicontrol(sfig,'Style','text',... 'String','Y-Max:',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.51 .35 .1 .07],... 'HorizontalAlignment','center',... 'Enable','on') uicontrol(sfig,'Style','edit',... 'String','<>',... 'ForeGroundColor','k',... 'Units','normalized',... 'Position',[.62 .35 .1 .07],... 'HorizontalAlignment','center',... 'Enable','off',... 'Tag','VIZICQ4_Region_Ymax') % Rotation activation button uicontrol(sfig,'Style','text',... 'Interruptible','on',... 'Units','normalized',... 'Position',[.75 .75 .15 .07],... 'String','Delta Theta:'); uicontrol(sfig,'Style','edit',... 'Interruptible','on',... 'Units','normalized',... 'Position',[.90 .75 .05 .07],... 'String','5',... 'ToolTipString','Delta theta (deg)',... 'Tag','VIZICQ4_DELTA_THETA',... 'Enable','off'); uicontrol(sfig,'Style','push',... 'Interruptible','on',... 'Units','normalized',... 'Position',[.75 .60 .1 .1],... 'ToolTipString','Rotate CCW',... 'Callback','vizicq4_guts(''RotateRegion'',''CCW'')',... 'String','Rot CCW',... 'Tag','VIZICQ4_ROTATE_CCW',... 'Enable','off'); uicontrol(sfig,'Style','push',... 'Interruptible','on',... 'Units','normalized',... 'Position',[.87 .60 .1 .1],... 'ToolTipString','Rotate CW',... 'Callback','vizicq4_guts(''RotateRegion'',''CW'')',... 'String','Rot CW',... 'Tag','VIZICQ4_ROTATE_CW',... 'Enable','off'); % Frame at bottom of fig uicontrol(sfig,'Style','frame',... 'Units','normalized',... 'Position',[0 0 1 .2],... 'Units','pixels'); uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.9 .05 .09 .1],... 'Units','pixels',... 'String','Close',... 'Callback','vizicq4_volume(''Close'')',... 'ToolTipString','Close Volume Popup') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.8 .05 .09 .1],... 'Units','pixels',... 'String','Rotate On',... 'Callback','vizicq4_volume(''Rotate_Toggle'')',... 'ToolTipString','Activate 3-D Rotation',... 'Tag','VIZICQ4_Rotation') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.7 .05 .09 .1],... 'Units','pixels',... 'String','Reset 2D',... 'Callback','vizicq4_volume(''Reset_View'')',... 'ToolTipString','Restore 2-D view') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.6 .05 .09 .1],... 'Units','pixels',... 'String','Colorbar',... 'Callback','vizicq4_volume(''Colorbar'')',... 'ToolTipString','Place Colorbar') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.5 .05 .09 .1],... 'Units','pixels',... 'String','Del 1 Vol',... 'Callback','vizicq4_volume(''DelVolume'',''one'')',... 'ToolTipString','Delete A Volume') uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.4 .05 .09 .1],... 'Units','pixels',... 'String','DelAllVol',... 'Callback','vizicq4_volume(''DelVolume'',''all'')',... 'ToolTipString','Delete All Volumes') uicontrol(sfig,'Style','text',... 'Units','normalized',... 'Position',[.12 .075 .1 .1],... 'Units','pixels',... 'String','Shading:',... 'HorizontalAlignment','left') uicontrol(sfig,'Style','radio',... 'Units','normalized',... 'Position',[.01 .02 .1 .1],... 'Units','pixels',... 'String','Interp',... 'Callback','vizicq4_volume(''Shading'',''Interp'')',... 'ToolTipString','Interpolated Shading',... 'Tag','VIZICQ4_Volume_Shading_Interp') uicontrol(sfig,'Style','radio',... 'Units','normalized',... 'Position',[.11 .02 .1 .1],... 'Units','pixels',... 'String','Flat',... 'Callback','vizicq4_volume(''Shading'',''Flat'')',... 'ToolTipString','Flat Shading',... 'Tag','VIZICQ4_Volume_Shading_Flat') uicontrol(sfig,'Style','radio',... 'Units','normalized',... 'Position',[.21 .02 .1 .1],... 'Units','pixels',... 'String','Faceted',... 'Callback','vizicq4_volume(''Shading'',''Faceted'')',... 'ToolTipString','Faceted Shading',... 'Tag','VIZICQ4_Volume_Shading_Faceted') %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%% make_icq4_info_popup %%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function make_icq4_info_popup % Figure defaults fontsize=get(0,'DefaultTextFontSize'); set(0,'DefaultTextFontWeight','bold') %%%% Build Slicer Popup sfig=figure('Position',[100 100 350 600],... 'IntegerHandle','off',... 'NumberTitle','off',... 'MenuBar','none',... 'Name','VIZICQ4 1.2 Icq4 Info',... 'Resize','on',... 'Units','pixels',... 'Tag','VIZICQ4_Icq4_Info_Fig',... 'CloseRequestFcn','closereq',... 'Visible','off'); uicontrol(sfig,'Style','frame',... 'Units','normalized',... 'Position',[.01 .005 .98 .985],... 'BackgroundColor',[1 1 1]*.7); uicontrol(sfig,'Style','text',... 'Units','normalized',... 'Position',[.02 .94 .96 .04],... 'BackgroundColor',[1 1 1]*.7,... 'FontSize',fontsize,... 'Units','pixels',... 'String','Icq4 File Information'); varlist={'codename :' 'casename :' 'inqfilename :' 'initcondname :' 'nn :' 'nnv :' 'day :' 'month :' 'year :' 'curr_seconds :' 'ZMID :' 'ZOLD :' 'UZMID :' 'VZMID :' 'WZMID :' 'Q2MID :' 'Q2LMID :' 'TMPMID :' 'SALMID :'}; xs1=.02;xs2=.51;dx=.45; ystart=.85;dy=.04;dyy=.035; for i=1:length(varlist) y=ystart-(i-1)*dy; uicontrol(sfig,'Style','text',... 'Units','normalized',... 'Position',[xs1 y dx dyy],... 'Units','pixels',... 'String',varlist{i},... 'HorizontalAlignment','right'); tag=['VIZICQ4_Icq4_Info_Line' int2str(i)]; string=varlist{i}; string=['<' string(1:length(string)-2) '>']; uicontrol(sfig,'Style','text',... 'Units','normalized',... 'Position',[xs2 y dx dyy],... 'BackgroundColor','w',... 'Tag',tag,... 'String',string,... 'ForeGroundColor','r',... 'HorizontalAlignment','left'); end uicontrol(sfig,'Style','push',... 'Units','normalized',... 'Position',[.4 .05 .20 .05],... 'Units','pixels',... 'String','Close',... 'Callback','vizicq4_guts(''Icq4_Info'')',... 'ToolTipString','Close Slicer Popup')