changeset 6793:9a179efae6bb

[project @ 2007-07-24 20:42:22 by dbateman]
author dbateman
date Tue, 24 Jul 2007 20:42:22 +0000
parents bbe79d3ed56a
children 5e4ae36ffdb2
files scripts/ChangeLog scripts/image/Makefile.in scripts/image/flag.m
diffstat 3 files changed, 65 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/scripts/ChangeLog	Tue Jul 24 20:34:08 2007 +0000
+++ b/scripts/ChangeLog	Tue Jul 24 20:42:22 2007 +0000
@@ -1,3 +1,15 @@
+2007-07-24  David Bateman  <dbateman@free.fr>
+
+	* image/flag.m: New colormap function.
+	* images/Makefile.in: Include it in SOURCES.
+
+	* image/autumn.m image/bone.m image/cool.m image/copper.m 
+	image/hot.m image/hsv.m image/jet.m image/pink.m image/prism.m 
+	image/rainbow.m image/spring.m image/summer.m image/white.m 
+	image/winter.m, image/brighten.m: Use isscalar and not is_scalar.
+	* image/gray.m, image/ocean.m: Use the same means of finding the
+	number of colormap elements as the other colormap functions.
+
 2007-07-24  Kai Habel  <kai.habel@gmx.de>
 
 	* plot/__go_draw_axes__.m: Handle patch.
--- a/scripts/image/Makefile.in	Tue Jul 24 20:34:08 2007 +0000
+++ b/scripts/image/Makefile.in	Tue Jul 24 20:42:22 2007 +0000
@@ -21,7 +21,7 @@
 INSTALL_DATA = @INSTALL_DATA@
 
 SOURCES = __img__.m __img_via_file__.m autumn.m bone.m brighten.m colormap.m \
-  cool.m copper.m gray.m gray2ind.m hot.m hsv.m hsv2rgb.m image.m \
+  cool.m copper.m flag.m gray.m gray2ind.m hot.m hsv.m hsv2rgb.m image.m \
   image_viewer.m imagesc.m imshow.m ind2gray.m ind2rgb.m jet.m loadimage.m \
   ntsc2rgb.m ocean.m pink.m prism.m rainbow.m rgb2hsv.m rgb2ind.m \
   rgb2ntsc.m saveimage.m spring.m summer.m white.m winter.m
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/scripts/image/flag.m	Tue Jul 24 20:42:22 2007 +0000
@@ -0,0 +1,52 @@
+## Copyright (C) 1999,2000  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 2, 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, write to the Free
+## Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+## 02110-1301, USA.
+
+## -*- texinfo -*-
+## @deftypefn {Function File} {} flag (@var{n})
+## Create color colormap. This colormap cycles through red, white, blue 
+## and black. The argument @var{n} should be a scalar.  If it
+## is omitted, the length of the current colormap or 64 is assumed.
+## @seealso{colormap}
+## @end deftypefn
+
+## Author:  Kai Habel <kai.habel@gmx.de>
+
+## flag(number) gives a colormap consists of red, white, blue and black
+## changing with each index
+
+function map = flag (number)
+
+  if (nargin == 0)
+    number = rows (colormap);
+  elseif (nargin == 1)
+    if (! isscalar (number))
+      error ("flag: argument must be a scalar");
+    endif
+  else
+    print_usage ();
+  endif
+
+  p = [1, 0, 0; 1, 1, 1; 0, 0, 1; 0, 0, 0];
+  if (rem(number,4) == 0)
+    map = kron (ones (number / 4, 1), p);
+  else
+    map = [kron (ones (fix (number / 4), 1), p); p(1:rem (number, 4), :)];
+  endif
+
+endfunction