summaryrefslogtreecommitdiff
path: root/Master/xemtex/gslib/markpath.ps
diff options
context:
space:
mode:
Diffstat (limited to 'Master/xemtex/gslib/markpath.ps')
-rw-r--r--Master/xemtex/gslib/markpath.ps60
1 files changed, 60 insertions, 0 deletions
diff --git a/Master/xemtex/gslib/markpath.ps b/Master/xemtex/gslib/markpath.ps
new file mode 100644
index 00000000000..e85dfe63ca8
--- /dev/null
+++ b/Master/xemtex/gslib/markpath.ps
@@ -0,0 +1,60 @@
+% Copyright (C) 1993 Aladdin Enterprises. All rights reserved.
+%
+% This program 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.
+%
+% This program 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 program; if not, write to the Free Software Foundation, Inc.,
+% 59 Temple Place, Suite 330, Boston, MA, 02111-1307.
+
+% $Id: markpath.ps,v 1.2.6.1.2.1 2003/04/12 14:02:39 giles Exp $
+% markpath.ps
+% Mark the corners of a path, drawing it slowly if desired.
+
+/Delay where { pop } { /Delay 0 def } ifelse
+/setxy0
+ { currentpoint /y0 exch def /x0 exch def
+ } def
+/bip
+ { epsx epsy idtransform /ey exch def /ex exch def
+ currentpoint ex 2 div ey 2 div rlineto currentpoint 0 ey neg rlineto
+ ex neg 0 rlineto 0 ey rlineto lineto lineto
+ stroke
+ } def
+/dally
+ { Delay { } repeat
+ Delay 0 ne { flushpage } if
+ } def
+/movebip
+ { /xs 2 index def /ys 1 index def
+ gsave newpath mpmx transform moveto setxy0 bip grestore
+ } def
+/linebip
+ { gsave newpath x0 y0 moveto mpmx transform lineto setxy0 bip dally grestore
+ } def
+/curvebip
+ { gsave newpath x0 y0 moveto 5 index 5 index mpmx transform lineto bip
+ 2 copy mpmx transform moveto 3 index 3 index mpmx transform lineto bip
+ x0 y0 moveto
+ 3 { mpmx transform 6 2 roll } repeat
+ curveto setxy0 bip dally grestore
+ } def
+/closebip
+ { xs ys linebip
+ } def
+
+/markpath % <matrix> markpath -
+ { /mpmx exch def
+ gsave initgraphics 9 dup dtransform grestore
+ /epsy exch def /epsx exch def
+ gsave 0 setlinewidth
+ { movebip } { linebip } { curvebip } { closebip } pathforall
+ grestore
+ } def