Mercurial > octave-nkf
comparison scripts/geometry/voronoi.m @ 18200:0ecd4618b1fc
voronoi.m: Fix input validation so it doesn't open blank figure window.
voronoi.m: Fix input validation so it doesn't open blank figure window.
author | Rik <rik@octave.org> |
---|---|
date | Fri, 03 Jan 2014 09:16:04 -0800 |
parents | 31d8e19a745d |
children | 5646f999245d |
comparison
equal
deleted
inserted
replaced
18199:b7d3e1f762e1 | 18200:0ecd4618b1fc |
---|---|
72 if (nargin < 1) | 72 if (nargin < 1) |
73 print_usage (); | 73 print_usage (); |
74 endif | 74 endif |
75 | 75 |
76 narg = 1; | 76 narg = 1; |
77 hax = NaN; | |
77 if (isscalar (varargin{1}) && ishandle (varargin{1})) | 78 if (isscalar (varargin{1}) && ishandle (varargin{1})) |
78 hax = varargin{1}; | 79 hax = varargin{1}; |
79 if (! isaxes (hax)) | 80 if (! isaxes (hax)) |
80 error ("voronoi: HAX argument must be an axes object"); | 81 error ("voronoi: HAX argument must be an axes object"); |
81 endif | 82 endif |
82 narg++; | 83 narg++; |
83 elseif (nargout < 2) | |
84 hax = gca (); | |
85 endif | 84 endif |
86 | 85 |
87 if (nargin < 1 + narg || nargin > 3 + narg) | 86 if (nargin < 1 + narg || nargin > 3 + narg) |
88 print_usage (); | 87 print_usage (); |
89 endif | 88 endif |
157 ## Get points of the diagram | 156 ## Get points of the diagram |
158 Vvx = reshape (p(edges, 1), size (edges)); | 157 Vvx = reshape (p(edges, 1), size (edges)); |
159 Vvy = reshape (p(edges, 2), size (edges)); | 158 Vvy = reshape (p(edges, 2), size (edges)); |
160 | 159 |
161 if (nargout < 2) | 160 if (nargout < 2) |
161 if (isnan (hax)) | |
162 hax = gca (); | |
163 endif | |
162 h = plot (hax, Vvx, Vvy, linespec{:}, x, y, '+'); | 164 h = plot (hax, Vvx, Vvy, linespec{:}, x, y, '+'); |
163 lim = [xmin, xmax, ymin, ymax]; | 165 lim = [xmin, xmax, ymin, ymax]; |
164 axis (lim + 0.1 * [[-1, 1] * xdelta, [-1, 1] * ydelta]); | 166 axis (lim + 0.1 * [[-1, 1] * xdelta, [-1, 1] * ydelta]); |
165 if (nargout == 1) | 167 if (nargout == 1) |
166 vx = h; | 168 vx = h; |