Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Координаты и отсечениеюЛекция 5.doc
Скачиваний:
16
Добавлен:
11.04.2015
Размер:
287.74 Кб
Скачать

Отсечение текста. Решение об отсечении текста в общем случае зависит от способа генерации литер и возможны три исхода.

Если каждую литеру представлять в виде множества коротких отрезков прямых линий (штрихов)5, то операции отсечения можно подвергнуть каждый отрезок, подлежащий отсечению. Такой подход дает однозначный ответ и четкое изображение, но работает очень медленно.

В общем случае каждая литера рассматривается как неделимый объект (вспомним клеточное кодирование, где каждая литера мысленно помещается в ячейку (клетку)) и базовая точка (центр ячейки или один из ее углов) сопоставляется с окном вывода. Если базовая точка внутри окна, то литера рисуется, в противном случае - нет.

Третий вариант состоит в том, что вся строка литералов считается неделимой и она либо принимается вся целиком, либо исключается из рассмотрения. При этом подходе с окном сопоставляется некоторая точка прямоугольника, охватывающего строку, либо диагональ прямоугольника, либо весь прямоугольник.

Отображение окна на поле вывода. После отсечения примитива по границам окна процессор видовой операции отображает его на поле вывода. На рис. 3.17 точка X,Y отражается в точку x,y с сохранением пропорций, с сохранением относительного положения внутри окна, то есть отношение расстояния от точки до y-границы к длине x-границы и отношение расстояния от точки до x-границы к длине y-границы должны быть одинаковы для окна и поля вывода.

Это соотношение может быть записано в виде:

Отсюда получаем уравнения отображения

или

или.

Здесь sxиsyкоэффициенты масштабирования, согласующие размеры окна и поля,xv_minиyv_min параметры переноса, привязывающие относительные координаты окна (Xw - Xw_min) и (Yw - Yw_min ) к левому нижнему углу поля вывода, что хорошо согласуется с формулами преобразования, полученными ранее.

С помощью этих уравнений получаются значения координат в нормированной системе координат либо полученные умножением на 1024 в физической системе координат. С точки зрения здравого смысла удобнее было реализовать преобразование МК ФК, но исходя из необходимости ориентации графических пакетов на широкое применение (с широким рядом дисплеев) более целесообразно преобразование НК -ФК.

1Речь идет об упорядоченных парах чисел, для которых известно, какое число является первым и какое – вторым.

2Разнообразие КС обусловлено спецификой решения прикладных задач. Выбор КС обеспечивает снижение вычислительных затрат и формирует изображение объектов на экране, отображая независимые от устройства координаты в координаты, зависящие от устройства вывода.

3Положительным (выбранным) направленным отрезком называется отрезок прямой, ограниченный концевыми точками, если указано, какая из этих точек является началом, какая – концом.

4На первом месте пишется полярный радиус на втором угол.

5Этот вариант характерен при создании литер пользователем по задуманному им шаблону. Но и в этом случае каждая литера может быть объявлена сегментом (блоком) и при отсечении либо удаляется, либо принимается целиком.