Академический Документы
Профессиональный Документы
Культура Документы
% Exercise the miter limit. The left column of lines should bevel at
% 90 degrees, the right column at 60 degrees.
gsave
1.8 setlinewidth
0 setgray
15 15 scale
-5 5 translate
[1.415 2.0]
{ setmiterlimit 12 0 translate 0 0 moveto
10 30 360
{ gsave 5 0 rlineto rotate 2.5 0 rlineto
gsave 0 setlinewidth 1 0 0 setrgbcolor stroke grestore
strokepath 0 setlinewidth stroke
grestore
0 4 rmoveto
} for
} forall
showpage
grestore
gsave
/drawlines {
gsave
2.0 setmiterlimit
2.0 setlinewidth
6 6 scale
5 20 translate
{0 1 2} % line cap
{ setlinecap gsave
{0 1 2} % line join
{ setlinejoin gsave
{ {currentpoint lineto}
{3 7 lineto}
{3 7 lineto 5 1 lineto}
{3 7 lineto 6 3 lineto closepath}
}
{ gsave 0 0 moveto exec
gsave stroke grestore
0.5 setlinewidth 1 0 0 setrgbcolor stroke
grestore 8 0 translate
} forall
grestore 35 0 translate
} forall
grestore 0 20 translate
} forall
grestore
} def
/xflip
{ 8.5 72 mul 0 translate -1 1 scale
} def
/rot90
{ 90 rotate 0 -9.75 72 mul translate
} def
/rot180
{ rot90 rot90
} def
/rot270
{ rot180 rot90
} def
drawlines showpage
gsave xflip drawlines grestore showpage
gsave rot90 drawlines grestore showpage
gsave rot90 xflip drawlines grestore showpage
gsave drawlines rot180 showpage
gsave rot180 xflip drawlines grestore showpage
gsave rot270 drawlines grestore showpage
gsave rot270 xflip drawlines grestore showpage
grestore
gsave
1 setlinecap
2.6 setmiterlimit
3.0 setlinewidth
5 5 scale
10 20 translate
{0 1 2} % line join
{
setlinejoin gsave
0 0 moveto 0 10 lineto 10 0 lineto gsave stroke grestore
15 0 translate
0 0 moveto 0 10 lineto 10 20 lineto gsave stroke grestore
15 0 translate
10 0 moveto 10 10 lineto 0 20 lineto gsave stroke grestore
15 0 translate
10 0 moveto 10 10 lineto 0 0 lineto gsave stroke grestore
grestore
gsave
0 20 translate
0 20 moveto 0 10 lineto 10 20 lineto gsave stroke grestore
15 0 translate
0 20 moveto 0 10 lineto 10 0 lineto gsave stroke grestore
15 0 translate
10 20 moveto 10 10 lineto 0 0 lineto gsave stroke grestore
15 0 translate
10 20 moveto 10 10 lineto 0 20 lineto gsave stroke grestore
grestore 60 0 translate
} forall
showpage
grestore
gsave
0 setgray
150 150 translate
[ [ 0 0.5 1 ] [ 1.5 2 2.5 ] [ 3 3.5 4 ] ]
{ gsave
{ setlinewidth star
250 0 translate
} forall
grestore 0 250 translate
} forall
grestore showpage
% End
quit