нарисует узор, изображенный на рис. Г.11, б в центре страницы размером 8S на 11 дюймов. Каждая команда 60 rotate добавляет по 60° к повороту системы координат. В последней команде 60 rotate нет необходимости, однако это является хорошим стилем: исходную ориентацию системы координат по завершении всего фрагмента кода следует оставлять неизменной.
Кстати, позднее мы увидим, что приведенный код можно сократить следующим образом:
300 400 translate
6 {drawOval 60 rotate } repeat
Команда
scale Выталкивает два верхних элемента из стека в качестве (sx, sy) и масштабирует координатные оси этими _множителями. Команда имеет следующую (рорму: sx sy scale -» -_
Г2. Графические операторы в PostScript
1015
Рис. Г.11. Рисование фигур с круговой симметрией Например, если вначале каждая единица равняется 1/72 дюйма, то команда 3 3 scale сделает каждую единицу равной 3/72 дюйма.
Предположим, что команда star рисует звезду А на рис. Г. 12. Тогда следующий фрагмент сценария
star % draw original star % рисуем исходную звезду 2 2 scale % magnify by 2 % увеличиваем в 2 раза star * draw star В
* рисуем звезду Б
0.5 0.5 scale % back to the original system % возвращаемся к исходной системе 1 2 scale % differential scaling % неравномерное масштабирование star % draw star С
* рисуем звезду В
нарисует три звезды"images/tmp8E4A-1001.png" alt="Г.12. Масштабирование системы координат">
Рис. Г.12. Масштабирование системы координат