i/txpath

Home Manual Packages Global Index Keywords Quick Reference |
    /*
       TXPATH.I
       Replacement for old meaning of text path= keyword.

       $Id$
     */
    /*    Copyright (c) 1996.  The Regents of the University of California.
                        All rights reserved.  */

    /* ------------------------------------------------------------------------ */

    func rotext (text, path)

    /* DOCUMENT plt, rotext(text,path), x, y
         return TEXT string as is (PATH=0), reversed (PATH=1), reversed and
         with a '\n' between each character, or with '\n' between characters
         (PATH=3).  When plotted, these strings correspond to the original
         meaning of the text path= keyword.  That is, successive characters
         will appear to the right, left, up, or down according to whether
         PATH is 0, 1, 2, or 3
       SEE ALSO: plt
     */
    {

      if (path<0 || path>4) error, "path must be 0, 1, 2, or 3";
      n= strlen(text);
      if (!path || n<2) return text;
      text= (*pointer(text));
      if (path==3) text= text(1:n);
      else text= text(n:1:-1);
      if (text!=1) {
        n= array('\n', 2*n-1);
        n(1:0:2)= text;
        text= n;
      }
      return string(&text);
    }

    /* ------------------------------------------------------------------------ */