Mercurial > octave
view scripts/deprecated/delaunay3.m @ 21580:ecce63c99c3f
maint: Add semicolons to terminate code in %! blocks.
* splineimages.m, Cell.cc, bsxfun.cc, cellfun.cc, conv2.cc, data.cc,
debug.cc, file-io.cc, gcd.cc, getrusage.cc, graphics.cc, kron.cc, mappers.cc,
oct-map.cc, ordschur.cc, psi.cc, rand.cc, variables.cc, __osmesa_print__.cc,
amd.cc, audiodevinfo.cc, dmperm.cc, qr.cc, ov-bool-mat.cc, ov-class.cc,
ov-fcn-handle.cc, ov-java.cc, oct-parse.in.yy, bicubic.m, delaunay3.m,
accumarray.m, flip.m, fliplr.m, flipud.m, gradient.m, inputParser.m, interp1.m,
narginchk.m, rot90.m, validateattributes.m, delaunay.m, delaunayn.m,
griddata3.m, inpolygon.m, waitbar.m, gray2ind.m, hsv2rgb.m, im2double.m,
image.m, imformats.m, imread.m, imshow.m, imwrite.m, ntsc2rgb.m, rgb2hsv.m,
rgb2ntsc.m, isbanded.m, onenormest.m, edit.m, fullfile.m, license.m, ode23.m,
ode45.m, glpk.m, annotation.m, legend.m, orient.m, text.m, area.m, barh.m,
contour.m, line.m, plot.m, plot3.m, plotyy.m, quiver.m, stem.m, clf.m,
copyobj.m, findobj.m, subplot.m, ppval.m, splinefit.m, ismember.m, freqz.m,
unwrap.m, eigs.m, ichol.m, pcg.m, spdiags.m, svds.m, magic.m, lscov.m,
median.m, ols.m, dec2base.m, strsplit.m, strtok.m, test.m, bug-31371.tst,
bug-36025.tst, bug-44940.tst, build-sparse-tests.sh, class-concat.tst,
classdef.tst, classes.tst, colormaps.tst, command.tst, ctor-vs-method.tst,
error.tst, fcn-handle-derived-resolution.tst, for.tst, index.tst, io.tst,
jit.tst, null-assign.tst, parser.tst, struct.tst, system.tst:
Add semicolons to terminate code in %! blocks.
author | Rik <rik@octave.org> |
---|---|
date | Fri, 01 Apr 2016 16:03:29 -0700 |
parents | f7f97d7e9294 |
children | bac0d6f07a3e |
line wrap: on
line source
## Copyright (C) 1999-2015 Kai Habel ## ## This file is part of Octave. ## ## Octave is free software; you can redistribute it and/or modify it ## under the terms of the GNU General Public License as published by ## the Free Software Foundation; either version 3 of the License, or (at ## your option) any later version. ## ## Octave is distributed in the hope that it will be useful, but ## WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ## General Public License for more details. ## ## You should have received a copy of the GNU General Public License ## along with Octave; see the file COPYING. If not, see ## <http://www.gnu.org/licenses/>. ## -*- texinfo -*- ## @deftypefn {} {@var{tetr} =} delaunay3 (@var{x}, @var{y}, @var{z}) ## @deftypefnx {} {@var{tetr} =} delaunay3 (@var{x}, @var{y}, @var{z}, @var{options}) ## ## @code{delaunay3} is deprecated and will be removed in Octave version 4.4. ## Please use @code{delaunay} in all new code. ## ## Compute the Delaunay triangulation for a 3-D set of points. ## The return value @var{tetr} is a set of tetrahedrons which satisfies the ## Delaunay circum-circle criterion, i.e., only a single data point from ## [@var{x}, @var{y}, @var{z}] is within the circum-circle of the defining ## tetrahedron. ## ## The set of tetrahedrons @var{tetr} is a matrix of size [n, 4]. Each ## row defines a tetrahedron and the four columns are the four vertices ## of the tetrahedron. The value of @code{@var{tetr}(i,j)} is an index into ## @var{x}, @var{y}, @var{z} for the location of the j-th vertex of the i-th ## tetrahedron. ## ## An optional fourth argument, which must be a string or cell array of ## strings, contains options passed to the underlying qhull command. See the ## documentation for the Qhull library for details ## @url{http://www.qhull.org/html/qh-quick.htm#options}. ## The default options are @code{@{"Qt", "Qbb", "Qc", "Qz"@}}. ## ## If @var{options} is not present or @code{[]} then the default arguments are ## used. Otherwise, @var{options} replaces the default argument list. ## To append user options to the defaults it is necessary to repeat the ## default arguments in @var{options}. Use a null string to pass no arguments. ## ## @seealso{delaunay, delaunayn, convhull, voronoi, tetramesh} ## @end deftypefn ## Author: Kai Habel <kai.habel@gmx.de> ## Deprecated in 4.0 function tetr = delaunay3 (x, y, z, options) persistent warned = false; if (! warned) warned = true; warning ("Octave:deprecated-function", "delaunay3 is obsolete and will be removed from a future version of Octave, please use delaunay instead"); endif if (nargin < 3 || nargin > 4) print_usage (); endif if (! (isvector (x) && isvector (y) && isvector (z) && length (x) == length (y) && length (x) == length (z))) error ("delaunay: X, Y, and Z must be the same size"); elseif (nargin == 4 && ! (ischar (options) || iscellstr (options))) error ("delaunay3: OPTIONS must be a string or cell array of strings"); endif if (nargin == 3) tetr = delaunayn ([x(:), y(:), z(:)]); else tetr = delaunayn ([x(:), y(:), z(:)], options); endif endfunction %!testif HAVE_QHULL %! x = [-1, -1, 1, 0, -1]; y = [-1, 1, 1, 0, -1]; z = [0, 0, 0, 1, 1]; %! assert (sortrows (sort (delaunay3 (x, y, z), 2)), [1,2,3,4;1,2,4,5]); ## FIXME: Need input validation tests