comparison scripts/image/image.m @ 7276:1e8e64d71e34

[project @ 2007-12-10 20:09:59 by jwe]
author jwe
date Mon, 10 Dec 2007 20:09:59 +0000
parents a730e47fda4d
children 3ceb12c499e9
comparison
equal deleted inserted replaced
7275:c099705f1aa7 7276:1e8e64d71e34
39 ## Created: July 1994 39 ## Created: July 1994
40 ## Adapted-By: jwe 40 ## Adapted-By: jwe
41 41
42 function retval = image (varargin) 42 function retval = image (varargin)
43 43
44 if (nargin == 0) 44 [ax, varargin, nargin] = __plt_get_axis_arg__ ("image", varargin{:});
45 __image__ (gca ()); 45
46 elseif (nargin == 1) 46 firstnonnumeric = Inf;
47 for i = 1 : nargin
48 if (! isnumeric (varargin{i}))
49 firstnonnumeric = i;
50 break;
51 endif
52 endfor
53
54 if (nargin == 0 || firstnonnumeric == 1)
55 img = loadimage ("default.img");
56 x = y = [];
57 elseif (nargin == 1 || firstnonnumeric == 2)
58 img = varargin{1};
59 x = y = [];
60 elseif (nargin == 2 || firstnonnumeric == 3)
47 print_usage (); 61 print_usage ();
48 elseif (isscalar (varargin{1}) && ishandle (varargin{1}))
49 h = varargin{1};
50 if (! strcmp (get (h, "type"), "axes"))
51 error ("image: expecting first argument to be an axes object");
52 endif
53 oldh = gca ();
54 unwind_protect
55 axes (h);
56 tmp = __image__ (h, varargin{2:end});
57 unwind_protect_cleanup
58 axes (oldh);
59 end_unwind_protect
60 else 62 else
61 tmp = __image__ (gca (), varargin{:}); 63 x = varargin{1};
64 y = varargin{2};
65 img = varargin{3};
66 firstnonnumeric = 4;
62 endif 67 endif
63 68
69 oldax = gca ();
70 unwind_protect
71 axes (ax);
72 h = __img__ (x, y, img, varargin {firstnonnumeric:end});
73 unwind_protect_cleanup
74 axes (oldax);
75 end_unwind_protect
76
64 if (nargout > 0) 77 if (nargout > 0)
65 retval = tmp; 78 retval = h;
66 endif 79 endif
67 80
68 endfunction 81 endfunction
69
70 function h = __image__ (ax, x, y, img)
71
72 ## Deprecated zoom. Remove this hunk of code if old zoom argument
73 ## is outmoded.
74 if ((nargin == 3 && isscalar (y)) || nargin == 5)
75 warning ("image: zoom argument ignored -- use GUI features");
76 endif
77 if (nargin == 5)
78 nargin = 4;
79 endif
80 if (nargin == 3 && isscalar (y))
81 nargin = 2;
82 endif
83
84 if (nargin == 1)
85 ## Load Bobbie Jo Richardson (Born 3/16/94)
86 img = loadimage ("default.img");
87 x = y = [];
88 elseif (nargin == 2)
89 img = x;
90 x = y = [];
91 elseif (nargin == 3 || nargin > 4)
92 print_usage ();
93 endif
94
95 h = __img__ (x, y, img);
96
97 endfunction