77 lines
1.2 KiB
PostScript
77 lines
1.2 KiB
PostScript
|
%
|
||
|
% 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
|