translate Выталкивает из стека два верхних элемента в качестве (х, у)1 и смещает систему координат на величину

(dx, dy) относительно старой системы координат. Его форма такова: dx dy translate -*- На рис. Г.8 показан пример для страницы размером 8S на 11 дюймов, где вначале действует система координат с началом отсчета в нижнем левом углу. Серая окружность может быть нарисована с помощью следующего сценария:

0.5 setgray
50 50 50 0 360 arc fi 11

Черную окружность можно нарисовать, сместив вначале систему координат в центр страницы:

306 396 translate 0 setgray
50 50 50 0 360 arc fill

Отметим, что обе эти окружности рисуются с помощью одного и того же кода; но с переносом системы координат.

Если выполняется последовательность операторов translate, то каждый из них «добавляется» к остальным (см. главу 5 о композиции преобразований). Например, если в данный момент выполняется

1 Это означает, что верхний элемент берется в качестве у, а следующий - в качестве х.

Г2. Графические операторы в PostScript

1013

команда 80 80 translate, то пользовательская система координат смещается на (80,80) добавочных единиц от ее последнего положения (в центре страницы).

rotate Выталкивает верхний элемент из стека, воспринимает его как некоторый угол (в градусах) и поворачивает

пользовательскую систему координат против часовой стрелки на этот угол. Его форма такова: angle rotate -»-

Г.8. Смещение пользовательской системы координат

Рис. Г.8. Смещение пользовательской системы координат

На рис. Г.9 показано влияние, которое оказывает на исходную систему координат оператор 30 rotate"opengl1_1097.html">⇐ Предыдущая| |Следующая ⇒