Updated license from GPL version 2 or later to GPL version 3 or later.
[debian/gnuradio] / gnuradio-core / src / utils / cool.m
1 %% Copyright (C) 1999,2000  Kai Habel
2 %%
3 %% This program is free software; you can redistribute it and/or modify
4 %% it under the terms of the GNU General Public License as published by
5 %% the Free Software Foundation; either version 3 of the License, or
6 %% (at your option) any later version.
7 %%
8 %% This program is distributed in the hope that it will be useful,
9 %% but WITHOUT ANY WARRANTY; without even the implied warranty of
10 %% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 %% GNU General Public License for more details.
12 %%
13 %% You should have received a copy of the GNU General Public License
14 %% along with this program; if not, write to the Free Software
15 %% Foundation, Inc., 51 Franklin Street, Boston, MA  02110-1301  USA
16
17 %% -*- texinfo -*-
18 %% @deftypefn {Function File} {} cool (@var{n})
19 %% Create color colormap. 
20 %% (cyan to magenta)
21 %% The argument @var{n} should be a scalar.  If it
22 %% is omitted, the length of the current colormap or 64 is assumed.
23 %% @end deftypefn
24 %% @seealso{colormap}
25
26 %% Author:  Kai Habel <kai.habel@gmx.de>
27
28 function map = cool (number)
29
30   if (nargin == 0)
31     number = rows (colormap);
32   elseif (nargin == 1)
33     if (! is_scalar (number))
34       error ("cool: argument must be a scalar");
35     end
36   else
37     usage ("cool (number)");
38   end
39
40   if (number == 1)
41     map = [0, 1, 1];  
42   elseif (number > 1)
43     r = (0:number - 1)' ./ (number - 1);
44     g = 1 - r;
45     b = ones (number, 1);
46     map = [r, g, b];
47   else
48     map = [];
49   end
50