- •Координатные системы. Геометрические преобразования
- •Пользовательская система координат (пск) отличается от мировой только тем, что мировая координатная система может быть только одна и положение ее фиксировано, она неподвижна.
- •Операции кадрирования и отсечения
- •Отсечение текста. Решение об отсечении текста в общем случае зависит от способа генерации литер и возможны три исхода.
Отсечение текста. Решение об отсечении текста в общем случае зависит от способа генерации литер и возможны три исхода.
Если каждую литеру представлять в виде множества коротких отрезков прямых линий (штрихов)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Этот вариант характерен при создании литер пользователем по задуманному им шаблону. Но и в этом случае каждая литера может быть объявлена сегментом (блоком) и при отсечении либо удаляется, либо принимается целиком.
