Пересекающиеся линии часто бывает необходимо соединить плавной кривой. В PostScript для этого существует удобный оператор arcto. В качестве операндов ему в стеке задаются координаты двух точек и радиус, т. е.:
x1 y1 x2 y2 r arcto
Он рисует сегмент прямой линии от текущей точки по направлению к точке х1, у1, а затем дугу до её пересечения со второй прямой.
<рисунок 4 R4.psc на бумаге>
Arcto возвращает в стеке координаты начала и конца дуги. Если они не нужны, то эти числа следует удалить из стека:
4 {pop} repeat
Используя оператор arcto, нарисуем какую-нибудь карточку:
/clearstack {4{ pop} repeat} def
200 300 translate
0 20 moveto
0 72 108 72 20 arcto clearstack
108 72 108 0 20 arcto clearstack
108 0 0 0 20 arcto clearstack
0 0 0 72 20 arcto clearstack
fill
0.5 setgray
80 45 20 0 360 arc fill
/Helvetica findfont 25 scalefont setfont
30 50 moveto
(My Card) show
showpage