Daniel@0: function sompak_init_gui() Daniel@0: Daniel@0: %SOMPAK_INIT_GUI A GUI for using SOM_PAK initialization programs from Matlab. Daniel@0: % Daniel@0: % sompak_init_gui Daniel@0: % Daniel@0: % Launches a GUI which allows the use of SOM_PAK initialization Daniel@0: % programs (randinit and lininit) from Matlab. Notice that to use this Daniel@0: % function, the SOM_PAK programs must be in your search path, or the Daniel@0: % variable 'SOM_PAKDIR' which is a string containing the program path, Daniel@0: % must be defined in the workspace. SOM_PAK programs can be found Daniel@0: % from: http://www.cis.hut.fi/research/som_lvq_pak.shtml Daniel@0: % Daniel@0: % See also SOMPAK_INIT, SOMPAK_GUI, SOMPAK_SAMMON_GUI, Daniel@0: % SOMPAK_TRAIN_GUI, SOM_GUI. Daniel@0: Daniel@0: % Contributed to SOM Toolbox vs2, February 2nd, 2000 Daniel@0: % Copyright (c) by Juha Parhankangas Daniel@0: % http://www.cis.hut.fi/projects/somtoolbox/ Daniel@0: Daniel@0: % Juha Parhankangas 050100 Daniel@0: Daniel@0: h=findobj(get(0,'Children'),'Tag','InitGUI'); Daniel@0: Daniel@0: if ~isempty(h) Daniel@0: figure(h); Daniel@0: return; Daniel@0: end Daniel@0: Daniel@0: a = figure('Color',[0.8 0.8 0.8], ... Daniel@0: 'PaperType','a4letter', ... Daniel@0: 'Position',[483 407 172 440], ... Daniel@0: 'Tag','InitGUI'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.701961 0.701961 0.701961], ... Daniel@0: 'Callback','close gcf',... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'Position',[8 20 50 20], ... Daniel@0: 'String','CLOSE', ... Daniel@0: 'Tag','Pushbutton1'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.701961 0.701961 0.701961], ... Daniel@0: 'Callback','sompak_rb_control init_ok', ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'Position',[86 20 50 20], ... Daniel@0: 'String','OK', ... Daniel@0: 'Tag','Pushbutton2'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.701961 0.701961 0.701961], ... Daniel@0: 'Position',[8 50 130 300], ... Daniel@0: 'Style','frame', ... Daniel@0: 'Tag','Frame1'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'Position',[12 54 122 40], ... Daniel@0: 'Style','frame', ... Daniel@0: 'Tag','Frame2'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'Position',[45.5 78 55 12], ... Daniel@0: 'String','INIT TYPE', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText1'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Callback','sompak_rb_control linear',... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.701961 0.701961 0.701961], ... Daniel@0: 'Position',[14 56 17 16], ... Daniel@0: 'Style','radiobutton', ... Daniel@0: 'Tag','LINEAR', ... Daniel@0: 'Value',1); Daniel@0: Daniel@0: udata.inittype = 'linear'; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Callback','sompak_rb_control rand',... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.701961 0.701961 0.701961], ... Daniel@0: 'Position',[73 56 17 16], ... Daniel@0: 'Style','radiobutton', ... Daniel@0: 'Tag','RANDOM'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[33 58 30 12], ... Daniel@0: 'String','Linear', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText2'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[91 58 37 12], ... Daniel@0: 'String','Random', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText3'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'Position',[12 96 122 40], ... Daniel@0: 'Style','frame', ... Daniel@0: 'Tag','Frame3'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'Position',[36.4235 118.588 74 12], ... Daniel@0: 'String','NEIGHBORHOOD', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText4'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Callback','sompak_rb_control bubble',... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.701961 0.701961 0.701961], ... Daniel@0: 'Position',[14 98 17 16], ... Daniel@0: 'Style','radiobutton', ... Daniel@0: 'Tag','BUBBLE', ... Daniel@0: 'Value',1); Daniel@0: Daniel@0: udata.neigh='bubble'; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Callback','sompak_rb_control gaussian',... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.701961 0.701961 0.701961], ... Daniel@0: 'Position',[73 98 17 16], ... Daniel@0: 'Style','radiobutton', ... Daniel@0: 'Tag','GAUSSIAN'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[33 100 32 12], ... Daniel@0: 'String','Bubble', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText5'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[89.5 100 43 12], ... Daniel@0: 'String','Gaussian', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText6'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'Position',[12 138 122 40], ... Daniel@0: 'Style','frame', ... Daniel@0: 'Tag','Frame4'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'Position',[45 162 55 12], ... Daniel@0: 'String','TOPOLOGY', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText7'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Callback','sompak_rb_control hexa',... Daniel@0: 'Units','points', ... Daniel@0: 'Position',[14 140 17 16], ... Daniel@0: 'Style','radiobutton', ... Daniel@0: 'Tag','HEXA', ... Daniel@0: 'Value',1); Daniel@0: Daniel@0: udata.topol='hexa'; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Callback','sompak_rb_control rect',... Daniel@0: 'Units','points', ... Daniel@0: 'Position',[73 140 17 16], ... Daniel@0: 'Style','radiobutton', ... Daniel@0: 'Tag','RECT'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[33 142 30 12], ... Daniel@0: 'String','Hexa', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText8'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[90 142 30 12], ... Daniel@0: 'String','Rect', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText9'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'Position',[12 180 122 40], ... Daniel@0: 'Style','frame', ... Daniel@0: 'Tag','Frame5'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[25 202 33 12], ... Daniel@0: 'String','X-dim', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText10'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[89 202 33 12], ... Daniel@0: 'String','Y-dim', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText11'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[1 1 1], ... Daniel@0: 'Callback','sompak_rb_control xdim',... Daniel@0: 'Position',[20 183 40 20], ... Daniel@0: 'Style','edit', ... Daniel@0: 'Tag','XDIM'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[1 1 1], ... Daniel@0: 'Callback','sompak_rb_control ydim',... Daniel@0: 'Position',[85 183 40 20], ... Daniel@0: 'Style','edit', ... Daniel@0: 'Tag','YDIM'); Daniel@0: Daniel@0: udata.xdim=[]; Daniel@0: udata.ydim=[]; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'Position',[12 222 122 40], ... Daniel@0: 'Style','frame', ... Daniel@0: 'Tag','Frame6'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'Position',[25 245 95 12], ... Daniel@0: 'String','OUTPUT VARIABLE', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText12'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[1 1 1], ... Daniel@0: 'Callback','sompak_rb_control out_var',... Daniel@0: 'Position',[22 226 102 20], ... Daniel@0: 'String','''ans''', ... Daniel@0: 'Style','edit', ... Daniel@0: 'Tag','OUT_VAR'); Daniel@0: Daniel@0: udata.out_var='ans'; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'Position',[12 264 122 40], ... Daniel@0: 'Style','frame', ... Daniel@0: 'Tag','Frame7'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[1 1 1], ... Daniel@0: 'Callback','sompak_rb_control out_file',... Daniel@0: 'Position',[15 267 50 20], ... Daniel@0: 'Style','edit', ... Daniel@0: 'Tag','OUT_FILE'); Daniel@0: Daniel@0: udata.out_file=[]; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[40 288 60 12], ... Daniel@0: 'String','OUTPUT FILE', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText13'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.701961 0.701961 0.701961], ... Daniel@0: 'Callback','sompak_rb_control out_ft',... Daniel@0: 'FontSize',9, ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Max',3, ... Daniel@0: 'Min',1, ... Daniel@0: 'Position',[70 272 62 15], ... Daniel@0: 'String',{'No File';'mat-file';'cod-file'}, ... Daniel@0: 'Style','popupmenu', ... Daniel@0: 'Tag','OUT_FILE_TYPE', ... Daniel@0: 'Value',1); Daniel@0: Daniel@0: udata.out_file_type=''; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'Position',[12 306 122 40], ... Daniel@0: 'Style','frame', ... Daniel@0: 'Tag','Frame8'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[57 330 30 12], ... Daniel@0: 'String','DATA', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText14'); Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[1 1 1], ... Daniel@0: 'Callback','sompak_rb_control data',... Daniel@0: 'Position',[15 309 50 20], ... Daniel@0: 'Style','edit', ... Daniel@0: 'Tag','DATA'); Daniel@0: Daniel@0: udata.data=[]; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'Callback','sompak_rb_control input_ft',... Daniel@0: 'FontSize',9, ... Daniel@0: 'FontWeight','demi', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Max',3, ... Daniel@0: 'Min',1, ... Daniel@0: 'Position',[70 314 62 15], ... Daniel@0: 'String',{'Variable';'mat-file';'dat-file'}, ... Daniel@0: 'Style','popupmenu', ... Daniel@0: 'Tag','INPUT_FILE_TYPE', ... Daniel@0: 'Value',1); Daniel@0: udata.input_file_type=''; Daniel@0: Daniel@0: b = uicontrol('Parent',a, ... Daniel@0: 'Units','points', ... Daniel@0: 'BackgroundColor',[0.8 0.8 0.8], ... Daniel@0: 'FontSize',12, ... Daniel@0: 'FontWeight','bold', ... Daniel@0: 'HorizontalAlignment','left', ... Daniel@0: 'Position',[57 355 30 12], ... Daniel@0: 'String','INIT', ... Daniel@0: 'Style','text', ... Daniel@0: 'Tag','StaticText15'); Daniel@0: Daniel@0: set(gcf,'UserData',udata); Daniel@0: Daniel@0: Daniel@0: Daniel@0: Daniel@0: