Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчёт по практике.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
147.77 Кб
Скачать

3.2 Графические операторы

Векторная графика всегда задается по координатам точек и отрезков. К координатам можно применять любые математические операции и значит эффективно изменять уже готовые рисунок. Ключевым понятием в PostScript является понятие траектории или контура. Контур делит плоскость рисунка на две части, слева и справа от себя. Контур можно обвести разными способами, замкнутый контур можно закрасить, контуром можно выделить часть нарисованной области. По этой причине в PostScript сначала задается контур, как объект. А уже потом специальные команды указывают, что с ними нужно делать.

Начало нового пути.

Графические построения состоят из нескольких этапов:

- инициализация нового графического пути;

- построение графического пути с помощью графических операторов;

- определение типа линии;

- прорисовка линии вдоль построенного пути.

Оператор newpath начинает новый путь. Открывает новую траекторию как объект, курсор остается на месте.

Завершение пути.

После построения пути вдоль него может быть проведена линия. Это осуществляет оператор stroke. Путь, кроме того, можно «закрыть», при этом от текущей точки до первой определенной в пути точки проводится прямая линия. «Закрывает» путь оператор closepath и траектория становится замкнутой.

Смещение текущей точки.

Смещение текущей точки можно произвести двумя способами:

- moveto смещает текущую точку в точку с указанными координатами (x,y);

- rmoveto смещает текущую точку по вектору с указанными координатами (dx, dy).

Оператор начинающийся с буквы r, означает, что передаваемые ему координаты считаются не от начала координат, а от текущей точки.

Построение прямой линии.

Построение прямой линии можно произвести двумя способами:

- lineto проводит прямую линию от текущей точки в точку с указанными координатами;

- rlineto проводит прямую линию от текущей точки в точку, отстоящую от нее на указанном расстоянии по горизонтали dx и по вертикали dy (по вектору с указанными координатами).

После выполнения этих команд, последняя точка прямой линии становится текущей точки.

Построение дуги окружности.

Дуга окружности, или окружность, строится оператором arc.

Синтаксис: x0 y0 R a1 a2 arc.

x0 y0 – координаты центра окружности;

R – радиус окружности;

a1 a2 – начальный и конечный угол дуги окружности (0..360).

Угол 0 совпадает с положительным направлением оси ОХ. Особенность оператора: если текущая точка пути определена, то от нее до начальной точки дуги проводится прямая линия. После построения дуги, последняя ее точка становится текущей. Дуга всегда рисуется против часовой стрелки, независимо от соответствия углов друг другу.

Свойства линии.

У линии можно задать несколько свойств: толщину, скругленность хвостиков, пунктирность, цвет и т.д. Толщину линии можно задать оператором setlinewidth, пунктирность оператором setdash, серость оператором setgray.

Смещение начала координат.

При открытии страницы начало координат находится в левом нижнем углу. Оператор translate смещает начало координат в указанную точку.

Поворот координат.

Оператор rotate поворачивает систему координат на произвольный угол (положительное направление – против часовой стрелки).

Использование пути в качестве маски.

Если нужно применить преобразование к какому либо объекту, а потом отменить его применение к остальным объектам, то для этого существуют две команды gsave и grestore. Они сохраняют и восстанавливают текущие графические параметры.

Масштабирование.

Если рисунок не помещается на страницы – его не требуется переделывать заново полностью, его достаточно масштабировать командой scale. Масштабирование производится по двум координатам – X, Y.