% | |
% Version 3.3.2 drawing procedures for dpost. Automatically pulled in when | |
% needed. | |
% | |
/inpath false def | |
/savematrix matrix def | |
/Dl { | |
inpath | |
{neg lineto pop pop} | |
{newpath neg moveto neg lineto stroke} | |
ifelse | |
} bind def | |
/De { | |
/y1 exch 2 div def | |
/x1 exch 2 div def | |
/savematrix savematrix currentmatrix def | |
neg exch x1 add exch translate | |
x1 y1 scale | |
0 0 1 0 360 | |
inpath | |
{1 0 moveto arc savematrix setmatrix} | |
{newpath arc savematrix setmatrix stroke} | |
ifelse | |
} bind def | |
/Da { | |
/dy2 exch def | |
/dx2 exch def | |
/dy1 exch def | |
/dx1 exch def | |
dy1 add neg exch dx1 add exch | |
dx1 dx1 mul dy1 dy1 mul add sqrt | |
dy1 dx1 neg atan | |
dy2 neg dx2 atan | |
inpath | |
{arc} | |
{newpath arc stroke} | |
ifelse | |
} bind def | |
/DA { | |
/dy2 exch def | |
/dx2 exch def | |
/dy1 exch def | |
/dx1 exch def | |
dy1 add neg exch dx1 add exch | |
dx1 dx1 mul dy1 dy1 mul add sqrt | |
dy1 dx1 neg atan | |
dy2 neg dx2 atan | |
inpath | |
{arcn} | |
{newpath arcn stroke} | |
ifelse | |
} bind def | |
/Ds { | |
/y2 exch def | |
/x2 exch def | |
/y1 exch def | |
/x1 exch def | |
/y0 exch def | |
/x0 exch def | |
x0 5 x1 mul add 6 div | |
y0 5 y1 mul add -6 div | |
x2 5 x1 mul add 6 div | |
y2 5 y1 mul add -6 div | |
x1 x2 add 2 div | |
y1 y2 add -2 div | |
inpath | |
{curveto} | |
{newpath x0 x1 add 2 div y0 y1 add -2 div moveto curveto stroke} | |
ifelse | |
} bind def |