%N grsyxd %F $MIR/src/grsyxd.f
%D Obtain the polyline representation of a given symbol
%B
      SUBROUTINE GRSYXD (SYMBOL, XYGRID, UNUSED)
      INTEGER SYMBOL
      INTEGER XYGRID(300)
      LOGICAL UNUSED

 Return the digitization coordinates of a character. Each character is
 defined on a grid with X and Y coordinates in the range (-49,49), 
 with the origin (0,0) at the center of the character.  The coordinate
 system is right-handed, with X positive to the right, and Y positive
 upward.  

 Arguments:
  SYMBOL (input)  : symbol number in range (1..3000).
  XYGRID (output) : height range, width range, and pairs of (x,y)
                    coordinates returned.  Height range = (XYGRID(1),
                    XYGRID(3)).  Width range = (XYGRID(4),XYGRID(5)).
                    (X,Y) = (XYGRID(K),XYGRID(K+1)) (K=6,8,...).
  UNUSED (output) : receives .TRUE. if SYMBOL is an unused symbol
                    number. A character of normal height and zero width
                    is returned. Receives .FALSE. if SYMBOL is a 
                    valid symbol number.

 The height range consists of 3 values: (minimum Y, baseline Y,
 maximum Y).  The first is reached by descenders on lower-case g, p,
 q, and y.  The second is the bottom of upper-case letters.  The third
 is the top of upper-case letters.  A coordinate pair (-64,0) requests
 a pen raise, and a pair (-64,-64) terminates the coordinate list. It
 is assumed that movement to the first coordinate position will be
 done with the pen raised - no raise command is explicitly included to
 do this. 
