📄 v3d_contour.m
字号:
function varargout = v3d_contour(varargin)% Contour menu f黵 volume browser%% Adaptation of function "v3d_contour" by Robert Barsch; the original% version is available at The Matlab Central File Exchange, File ID 2255.% http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=2255&objectType=file%% Modified by: E. Rietsch: July 22, 2007: "mlint" compatible%% --------------------------------------------------------------------% % v3d_contour(hObject,eventdata)% Expects the figure ID of the graphic window when calledglobal V3D_HANDLESfigure_handle=V3D_HANDLES.figure_handle;% axis_handle=V3D_HANDLES.axis_handle;% Initialisation der GUI% ----------------------% figure_handle und axis_handle setzen% aktuelle Achse in Figure figure_handle finden% axis_handle=get(figure_handle,'CurrentAxes');% Benutzerdaten userdata der Figure figure_handle auslesen% Create a field "first_contour" to create defaults the first time % the menu item is selectedud=get(figure_handle,'userdata');options=getappdata(figure_handle,'options');if ~isfield(ud,'first_contour') ud.first_contour=true; grid(V3D_HANDLES.axis_handle,'on')end% Use axis mnemonices in GUIset(figure_handle,'userdata',ud)% FIG Datei oeffnen + handles generierenfid = openfig(mfilename,'reuse');% Store handle of menu so that it can be deleted upon termination of the browseradd_handle2delete1(fid,figure_handle)% Generate a structure of handles to pass to callbacks, and store it. handles = guihandles(fid);% Make GUI invisibleset(fid,'visible','off','userdata',figure_handle);% GUI Werte aktualisieren% -----------------------% alle V3D-Contourslices finden und deren Koordinaten und Colorflags auslesen + setzenif ~isempty(findobj(figure_handle,'Tag','V3D:CONTOUR')) temp=findobj(figure_handle,'Tag','V3D:CONTOUR'); % Userdata auslesen objud=get(temp(1),'userdata'); % Edgecolor und Isovalue setzen set(handles.contour_edgecolor,'Value',objud.edgecolor_value); set(handles.contour_isovalue,'String',num2str(objud.isovalue)); % Slice setzen if (size(objud.x,1)) s=num2str(objud.x(1)); for ii=2:size(objud.x,2) % Krampf da num2str unn鰐ig viele Leerzeichen produziert c=num2str(objud.x(ii)); s=strcat(s,[' ' c]); end set(handles.contour_xact,'String',s); % Setzen der Slices set(handles.contour_x,'Value',1); % X aktivieren end if (size(objud.y,1)) s=num2str(objud.y(1)); for i=2:size(objud.y,2) c=num2str(objud.y(i)); s=strcat(s,[' ' c]); end set(handles.contour_yact,'String',s); set(handles.contour_y,'Value',1); end if (size(objud.z,1)) s=num2str(objud.z(1)); for i=2:size(objud.z,2) c=num2str(objud.z(i)); s=strcat(s,[' ' c]); end set(handles.contour_zact,'String',s); set(handles.contour_z,'Value',1); end clear g sl;end% GUI plazieren und anzeigen% --------------------------% Position der GUI auf rechts oben festlegen movegui(fid,'northeast'); % Customize the axis directions in the GUIset(handles.contour_x,'String',options.xinfo{1});set(handles.contour_y,'String',options.yinfo{1});set(handles.contour_z,'String',options.zinfo{1});% Make window visibleset(fid,'visible','on');% Handles aktualisieren, GUI aufrufen + auf Aktionen warten% ---------------------------------------------------------contour_callback([], [], handles)guidata(fid, handles); % Wait for callbacks to run and window to be dismissed:uiwait(fid);if nargout > 0 varargout{1} = fid;end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -