| % |
| % 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 |