%$Id: example.pic,v 1.19 2007/01/14 14:03:51 hahe Exp hahe $
%***********************************************************************
\pdfcompresslevel=0
\def\gpicbox#1{\vbox{\unvbox\csname #1\endcsname\kern0pt}}
\newcount\piccount\piccount=0
\def\sep{\advance\piccount by 1%
  \kern5pt\hrule\kern5pt\rlap{\smash{\lower10pt\hbox{\the\piccount}}}}
\sep
%***********************************************************************
% 1
.PS
box dotted thickness 1; arrow;
circle dotted 0.02 fill 0.1 "Hello"; arrowhead = 7; arrow; circle fill 0.1;
arrowhead = 2; arrow; circle fill 0.9; arrow; box dashed 0.1
.PE
\centerline{A\gpicbox{graph}B}
\sep
%***********************************************************************
% 2
.PS
ellipse; arrow;
\pdfliteral {q 1 0 0 RG}
ellipse dotted thickness 2;
\pdfliteral {Q}
arrow;
ellipse dashed "$\sqrt{3/7\cdot{2\over5}}$" "No.~2"; arrow;
\pdfliteral {q 0 0 1 RG}
\pdfliteral {  0.5 0.5 0.0 rg}
box rad 0.25 fill 0.05 "Hello"; arrow;
\pdfliteral {Q}
box dotted fill 0.2
.PE
\centerline{A\gpicbox{graph}B}
\sep
%***********************************************************************
% 3
.PS
line; arc; arc cw; line
.PE
\centerline{A\gpicbox{graph}B}
\sep
%***********************************************************************
% 4
.PS
spline right 1 then down .5 left 1 then right 1 ->;
line dashed right 1 then down .5 left 1 then right 1 -> at last spline
.PE
\centerline{A\gpicbox{graph}B}
\sep
%***********************************************************************
% 5
.PS
\pdfliteral {q 0 1 0 RG}
spline dashed right 1 then down .5 left 1 then down ->
\pdfliteral {Q}
line dotted 0.02 right 1 then down .5 left 1 then down -> at last spline
.PE
\centerline{A\gpicbox{graph}B}
\sep
%***********************************************************************
% 6
.PS
spline left then up right then down right ->
.PE
\centerline{A\vrule\gpicbox{graph}\vrule B}
\sep
%***********************************************************************
% 7
.PS
spline right then up then left then down ->
line dotted right then up then left then down -> at last spline
.PE
\centerline{A\gpicbox{graph}B}
\sep
%***********************************************************************
% 8
.PS
circle "x"
circle "y" at 1st circle - (0.4, 0.6)
circle "z" at 1st circle + (0.4, -0.6)
arrow from 1st circle to 2nd circle chop
arrow from 2st circle to 3rd circle chop
arrow from 3rd circle to 1st circle chop
.PE
\centerline{A\gpicbox{graph}B}
\sep
%***********************************************************************
% 9
% example borrowed from file cstr116.pdf or cstr116.ps:
% PIC --- A Graphics Language for Typesetting, User Manual,
% Brian W. Kernighan, Revised, May, 1991
.PS
define ndblock{
	box wid boxwid/2 ht boxht/2
	down; box same with .t at bottom of last box; box same
}
boxht = .2; boxwid = .3; circlerad = .3; dx = 0.05
down; box; box; box; box ht 3*boxht "." "." "."
L: box; box; box invis wid 2*boxwid "hashtab:" with .e at 1st box .w
right
Start: box wid .5 with .sw at 1st box.ne + (.4,.2) "..."
N1: box wid .2 "n1"; D1: box wid .3 "d1"
N3: box wid .4 "n3"; D3: box wid .3 "d3"
box wid .4 "..."
N2: box wid .5 "n2"; D2: box wid .2 "d2"
arrow right from 2nd box
ndblock
spline -> right .2 from 3rd last box then to N1.sw + (dx,0)
spline -> right .3 from 2nd last box then to D1.sw + (dx,0)
arrow right from last box
ndblock
spline -> right .2 from 3rd last box to N2.sw - (dx,.2) to N2.sw + (dx,0)
spline -> right .3 from 2nd last box to D2.sw - (dx,.2) to D2.sw + (dx,0)
arrow right 2* linewid from L
ndblock
spline -> right .2 from 3rd last box to N3.sw + (dx,0)
spline -> right .3 from 2nd last box to D3.sw + (dx,0)
circlerad=.3
circle invis "ndblock" at last box.e + (1.2,.2)
arrow dashed from last circle.w to last box chop 0 chop .3
box invis wid 2*boxwid "ndtable:" with .e at Start.w
.PE
\centerline{A\gpicbox{graph}B}
\sep
%***********************************************************************
\end

