⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mfbox_pre_selectslicesg.m

📁 toolbox for spm 5 for data, model free analysis
💻 M
字号:
function varargout=mfbox_pre_selectslicesg(varargin)% MFBOX_PRE_SELECTSLICESG M-file for mfbox_pre_selectslicesg.fig%% See also: GUIDE, GUIDATA, GUIHANDLES%% Copyright by Peter Gruber and Fabian J. Theis% Signal Processing & Information Theory group% Institute of Biophysics, University of Regensburg, Germany% Homepage: http://research.fabian.theis.name%           http://www-aglang.uni-regensburg.de%% This file is free software, subject to the % GNU GENERAL PUBLIC LICENSE, see gpl.txt% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name',mfilename, ...    'gui_Singleton',gui_Singleton, ...    'gui_OpeningFcn',@mfbox_pre_selectslicesg_OpeningFcn, ...    'gui_OutputFcn',@mfbox_pre_selectslicesg_OutputFcn, ...    'gui_LayoutFcn',[], ...    'gui_Callback',[]);if (nargin&&(ischar(varargin{1})))    gui_State.gui_Callback = str2func(varargin{1});endif (nargout)    [varargout{1:nargout}] = gui_mainfcn(gui_State,varargin{:});else    gui_mainfcn(gui_State,varargin{:});end% End initialization code - DO NOT EDIT% --- Executes just before mfbox_pre_selectslicesg is made visible.function mfbox_pre_selectslicesg_OpeningFcn(hObject,eventdata,handles,varargin)% varargin{1} contains data X% varargin{2} contains data mask% varargin{3} contains data grid% varargin{4} contains timeline% varargin{5} (optional) contains the parameters% varargin{6} (optional) contains runflag (0: param edit only, 1: param+run, 2: run only)% varargin{7} (optional) contains private struct for mfbox_databackend('redraw_mask',mask,private)handles.output = hObject;handles.X = varargin{1};if (isstruct(handles.X)), s = [handles.X.dim,handles.X.timesteps];else, s = size(handles.X);endhandles.dim = s(1:(end-1));if (length(handles.dim)==1), handles.dim = [handles.dim,1]; endhandles.n = s(end);if (nargin>4), handles.mask = varargin{2}; else handles.mask = true(handles.dim);ends = size(handles.mask);handles.dim = ones(1,3);handles.dim(1:length(s)) = max(s(1:end),ones(1,length(s)));if (nargin>5), handles.grid = varargin{3};else handles.grid = mfbox_mkgrid(handles.dim)';endif (nargin>6), handles.timeline = varargin{4};else handles.timeline = 0:(handles.n-1);endif (nargin>7), handles.params = varargin{5};else handles.params = [];endif (nargin>8), handles.runflag = varargin{6};else handles.runflag = 2;endif (nargin>9), handles.private = varargin{7}; endset(handles.xmin,'Min',1,'Max',handles.dim(1),'SliderStep',min(ones(1,2)/max(handles.dim(1)-1,1),1), ...    'Value',min(handles.params.xmin, handles.dim(1)));set(handles.xmax,'Min',1,'Max',handles.dim(1),'SliderStep',min(ones(1,2)/max(handles.dim(1)-1,1),1), ...    'Value',min(handles.params.xmax, handles.dim(1)));set(handles.ymin,'Min',1,'Max',handles.dim(2),'SliderStep',min(ones(1,2)/max(handles.dim(2)-1,1),1), ...    'Value',min(handles.params.ymin,handles.dim(2)));set(handles.ymax,'Min',1,'Max',handles.dim(2),'SliderStep',min(ones(1,2)/max(handles.dim(2)-1,1),1), ...    'Value',min(handles.params.ymax,handles.dim(2)));set(handles.zmin,'Min',1,'Max',handles.dim(3),'SliderStep',min(ones(1,2)/max(handles.dim(3)-1,1),1), ...    'Value',min(handles.params.zmin,handles.dim(3)));set(handles.zmax,'Min',1,'Max',handles.dim(3),'SliderStep',min(ones(1,2)/max(handles.dim(3)-1,1),1), ...    'Value',min(handles.params.zmax,handles.dim(3)));set(handles.priority,'String',mat2str(handles.params.priority));settext(handles);if (handles.runflag<1)    if (isfield(handles,'private')), redrawmask(handles); end    set(handles.run,'String','Set ...');endguidata(hObject,handles);uiwait(handles.figure1); % --- Outputs from this function are returned to the command line.function varargout=mfbox_pre_selectslicesg_OutputFcn(hObject,eventdata,handles) % varargout{1} contains the (edited) parameters% varargout{2} (optional) contains (changed) private handleif (isstruct(handles))    close(handles.figure1);    varargout{1} = handles.params;    if (nargout>1), varargout{2} = handles.private; endelse    varargout{1} = [];end% --- Executes on button press in run.function run_Callback(hObject,eventdata,handles)handles.params.priority = str2double(get(handles.priority,'String'));handles.params.xmin = round(get(handles.xmin,'Value'));handles.params.xmax = round(get(handles.xmax,'Value'));handles.params.ymin = round(get(handles.ymin,'Value'));handles.params.ymax = round(get(handles.ymax,'Value'));handles.params.zmin = round(get(handles.zmin,'Value'));handles.params.zmax = round(get(handles.zmax,'Value'));guidata(hObject,handles);uiresume(gcf);% --- Executes on slider movement.function xmin_Callback(hObject,eventdata,handles)set(hObject,'Value',round(get(hObject,'Value')));settext(handles);if (isfield(handles,'private')), redrawmask(handles); endguidata(hObject,handles);% --- Executes during object creation, after setting all properties.function xmin_CreateFcn(hObject,eventdata,handles)if (isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor')))    set(hObject,'BackgroundColor',[.9,.9,.9]);end% --- Executes on slider movement.function xmax_Callback(hObject,eventdata,handles)set(hObject,'Value',round(get(hObject,'Value')));settext(handles);if (isfield(handles,'private')), redrawmask(handles); endguidata(hObject,handles);% --- Executes during object creation, after setting all properties.function xmax_CreateFcn(hObject,eventdata,handles)if (isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor')))    set(hObject,'BackgroundColor',[.9,.9,.9]);end% --- Executes on slider movement.function ymin_Callback(hObject,eventdata,handles)set(hObject,'Value',round(get(hObject,'Value')));settext(handles);if (isfield(handles,'private')), redrawmask(handles); endguidata(hObject,handles);% --- Executes during object creation, after setting all properties.function ymin_CreateFcn(hObject,eventdata,handles)if (isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor')))    set(hObject,'BackgroundColor',[.9,.9,.9]);end% --- Executes on slider movement.function ymax_Callback(hObject,eventdata,handles)set(hObject,'Value',round(get(hObject,'Value')));settext(handles);if (isfield(handles,'private')), redrawmask(handles); endguidata(hObject,handles);% --- Executes during object creation, after setting all properties.function ymax_CreateFcn(hObject,eventdata,handles)if (isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor')))    set(hObject,'BackgroundColor',[.9,.9,.9]);end% --- Executes on slider movement.function zmin_Callback(hObject,eventdata,handles)set(hObject,'Value',round(get(hObject,'Value')));settext(handles);if (isfield(handles,'private')), redrawmask(handles); endguidata(hObject,handles);% --- Executes during object creation, after setting all properties.function zmin_CreateFcn(hObject,eventdata,handles)if (isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor')))    set(hObject,'BackgroundColor',[.9,.9,.9]);end% --- Executes on slider movement.function zmax_Callback(hObject,eventdata,handles)set(hObject,'Value',round(get(hObject,'Value')));settext(handles);if (isfield(handles,'private')), redrawmask(handles); endguidata(hObject,handles);% --- Executes during object creation, after setting all properties.function zmax_CreateFcn(hObject,eventdata,handles)if (isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor')))    set(hObject,'BackgroundColor',[.9,.9,.9]);endfunction priority_Callback(hObject,eventdata,handles)set(hObject,'String',mat2str(min(max(floor(str2double(get(hObject,'String'))),1),100)));% --- Executes during object creation, after setting all properties.function priority_CreateFcn(hObject,eventdata,handles)if (ispc&&(isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor'))))    set(hObject,'BackgroundColor','white');end% ---function settext(handles)v = round(get(handles.xmin,'Value')); w = round(get(handles.xmax,'Value'));if (v<=w), set(handles.xlabel,'String',sprintf('%2d<=x<=%2d',v,w));else set(handles.xlabel,'String',sprintf('x<%2d,%2d<x',w,v));endv = round(get(handles.ymin,'Value')); w = round(get(handles.ymax,'Value'));if (v<=w), set(handles.ylabel,'String',sprintf('%2d<=y<=%2d',v,w));else set(handles.ylabel,'String',sprintf('y<%2d,%2d<y',w,v));endv = round(get(handles.zmin,'Value')); w = round(get(handles.zmax,'Value'));if (v<=w), set(handles.zlabel,'String',sprintf('%2d<=z<=%2d',v,w));else set(handles.zlabel,'String',sprintf('z<%2d,%2d<z',w,v));endfunction redrawmask(handles)mask = false(handles.dim);x = 1:handles.dim(1); y = 1:handles.dim(2); z = 1:handles.dim(3);v = get(handles.xmin,'Value'); w = get(handles.xmax,'Value');if (v<=w), x = (x>=v)&(x<=w); else x = (x<v)|(x>w); endv = get(handles.ymin,'Value'); w = get(handles.ymax,'Value');if (v<=w), y = (y>=v)&(y<=w); else y = (y<v)|(y>w); endv = get(handles.zmin,'Value'); w = get(handles.zmax,'Value');if (v<=w), z = (z>=v)&(z<=w); else z = (z<v)|(z>w); endmask(x,y,z) = true;mfbox_databackend('redraw_mask',mask,handles.private);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -