function varargout = My0703(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @My0703_OpeningFcn, ...
'gui_OutputFcn', @My0703_OutputFcn, ...
'gui_LayoutFcn', [], ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
function My0703_OpeningFcn(hObject, eventdata, handles, varargin)
handles.peaks=peaks(35);
handles.membrane=membrane;
[x,y]=meshgrid(-8:0.5:8);
r=sqrt(x.^2+y.^2)+eps;
sinc=sin(r)./r;
handles.sinc=sinc;
handles.current_data=handles.peaks;
surf(handles.current_data);
handles.output = hObject;
guidata(hObject, handles);
function varargout = My0703_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
function Surf_pushbutton_Callback(hObject, eventdata, handles)
surf(handles.current_data);
function Mesh_pushbutton_Callback(hObject, eventdata, handles)
mesh(handles.current_data);
function Contour_pushbutton_Callback(hObject, eventdata, handles)
contour(handles.current_data);
function data_popup_Callback(hObject, eventdata, handles)
val=get(hObject,'Value');
str=get(hObject,'String');
switch str{val}
case 'peaks'
handles.current_data=handles.peaks;
case 'membrane'
handles.current_data=handles.membrane;
case 'sinc'
handles.current_data=handles.sinc;
end
guidata(hObject,handles);