% $Id: xycmat10.mf,v 2.12 1994/10/25 11:34:25 kris Exp $
%
% XYCMAT10: upper arrow tips for XY-pic at 10 point "Computer Modern style".
% Copyright (c) 1994  Kristoffer H. Rose  <kris@diku.dk>
%
% This file is part of the XY-pic macro package.
%
% The XY-pic macro package 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 of the License, or (at your
% option) any later version.
%
% The XY-pic macro package 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 this macro package; if not, write to the Free Software Foundation,
% Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
% _________________________________________________________________________
%
% CONTENTS: Arrow tips *pointing* in all directions.  With zero bounding box
% placed at the tip; note most of the ink goes on the opposite side of where
% the tip points.
%
% This font contains the half of the tip that is upper when pointing right.
% _________________________________________________________________________
%
font_identifier "XYCMAT"; font_size 10pt#;
mode_setup;

% METANESS...
%
segl# = 1/5 designsize; define_pixels(segl);		% segment length
segx# = 1/2 designsize; define_pixels(segx);		% segment height
segw# = .4pt#; define_whole_blacker_pixels(segw);	% segment thickness
%
tipo# = 0#; define_pixels(tipo);	% tip overshoot
curvature = 1/3;			% 1 = straight tails, 0= curved tails
%
pickup pencircle scaled segw; char_pen := savepen;
%
% chartowards makes char cc a tip pointing towards (dx,dy)...
%
def chartowards(expr cc,dx,dy) =
 beginchar(cc,0,0,0);
  a := angle(dx,dy);
  z0 = (tipo,0) rotated a; 		% tip of tip
  z1 = (-segl,0) rotated a;		% center of tail
  z2 = (-segl,1/2 segx) rotated a;	% tail ends
  z3 = curvature [z1,z2];		% tail directions
  pickup char_pen; draw z2..{-z3}z0;
  penlabels(0,1,2,3);
 endchar
enddef;

% TESTING...we redefine openit because the characters extend far to the
% left of the bounding box!
%
def openit = openwindow currentwindow
 from origin to (screen_cols,screen_rows) at (-200,300) enddef;

% GENERATE...
%
input xyd

bye.
%
% $Log: xycmat10.mf,v $
% Revision 2.12  1994/10/25  11:34:25  kris
% Interim release just before v3 [works with AMS-LaTeX 1.2]...
%
% Recreated from xyatip10.mf (Revision 2.7 1992/12/14 01:41:26 kris).
%
% Revision 2.6  1993/10/21  21:21:24  kris
% NEW for 2.7...
%
% Based on xyatip10.mf [2.6] and Knuth's SYMBOL.MF.
