majiancumt 发表于 2009-4-19 18:21

matlab

function q=mmhole(x,y,z,xlim,ylim)
%MMHOLE Create Hole in 3D Graphics Data
% Z=MMHOLE(X,Y,Z,Xlim,Ylim) sets the data in Z to NaN
% corresponding to the limits in Xlim= and
% Ylim=. If Xlim or Ylim are empty they are
% assumed to be [-inf inf].
% X and Y can be plaid matrices, e.g., created by MESHGRID
% or they can be vectors defining the x and y axes.
%
% Z=MMHOLE(Z,Clim,Rlim) creates the NaN hole based on the
% column index limits in Clim and the row index limits in Rlim
%
% Resulting data can be plotted using mesh or surf:
% MESH(X,Y,Z) or SURF(X,Y,Z)
% This function automates the procedure described on
% page 249 of "Mastering MATLAB".

% D.C. Hanselman, University of Maine, Orono ME,  04469
% 9/26/95
% Copyright (c) 1996 by Prentice-Hall, Inc.

if nargin==3

majiancumt 发表于 2009-4-19 18:29

function mmline(arg1,arg2,arg3,arg4,arg5,arg6)
%MMLINE Set Line Properties Using Mouse.
% MMLINE waits for a mouse click on a line then
% applies the desired properties to the selected line.
% Properties are given in pairs, e.g., MMLINE name value ...
% Properties:
% NAME                VALUE                {default}
% color                or an rgb in quotes: ''
% style                [-  --  :  -.]
% mark               
% width                points for linewidth {0.5}
% size                points for marker size (6)
% zap                (n.a.)  delete selected line
% Examples:
% MMLINE color r width 2   sets color to red and width to 2 points
% MMLINE mark + size 8     sets marker type to + and size to 8 points
% MMLINE color ''  sets color to orange
%
% Clicking on an object other than a line, or striking
% a key on the keyboard aborts the command.

% D.C. Hanselman, University of Maine, Orono, ME, 04469
% 4/27/95
% Copyright (c) 1996 by Prentice-Hall, Inc.

Hf=mmgcf;
if isempty(Hf), error('No Figure Available.'), end
if length(get(0,'Children'))==1
        figure(Hf) % bring only figure forward
end
key=waitforbuttonpress;
if key  % key on keyboard pressed
        return
else    % object selected
        Hl=gco;
        if strcmp(get(Hl,'Type'),'line') % line object selected
                for i=1:2:max(nargin-1,1)
                        name=eval(sprintf('arg%.0f',i),'[]'); % get name argument
                        if strcmp(name,'zap')
                                delete(Hl),return
                        end
                        value=eval(sprintf('arg%.0f',i+1),'[]'); % get value argument
                        if strcmp(name,'color')
                                if value(1)=='[',value=eval(value);end
                                set(Hl,'Color',value)
                        elseif strcmp(name,'style')
                                set(Hl,'Linestyle',value)
                        elseif strcmp(name,'mark')
                                set(Hl,'Linestyle',value)
                        elseif strcmp(name,'width')
                                value=abs(eval(value));
                                set(Hl,'LineWidth',value)
                        elseif strcmp(name,'size')
                                value=abs(eval(value));
                                set(Hl,'MarkerSize',value)
                        else
                                disp(['Unknown Property Name: ' name])
                        end
                end
        end
end

上弦月的思念 发表于 2009-4-21 10:57

顶。。。。。。。。。。。。
页: [1]
查看完整版本: matlab