Отсечение отрезка. Алгоритм Сазерленда-Кохена.

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

Простой и эффективный алгоритм отсечения отрезков по границе произвольного прямоугольника называется алгоритмом Сазерленда - Кохена. Он заключается в разбиении всей плоскости на 9 областей. Определив, в какие области попали концы отрезка, легко понять, где именно необходимо отсечение. Для точки Р ( х ,у ) соответствует 4 - битовый код , причем каждый бит соответствует определенному положению .

 

КОД: В3 В2 В1 В0

В3 = (х <x min) B1 = (y < y min)

B2 = (x > x max ) B0 = ( y > y max )

 

Идея алгоритма заключается в том, что отрезок анализируется на предмет пересечения поочередно со всеми сторонами окна. Если пересечение существует, то отбрасывается часть отрезка между концом Р1 (вн. окна) и найденной точкой пересечения Рn (Xn , Yn). Причем в алгоритме отсечения рассматриваются только те отрезки, видимость которых неочевидна.

F -переменная, определяющая вид отрезка, причем:

0, отрезок горизонтальный

-1, отрезок вертикальный

1, иначе

 

 

Лекция 7. Стандартизация в компьютерной графике

 

Начальный период создания и развития средств машинной графики характеризовался развитием многочисленных, иногда достаточно эффективных, графических систем, ориентированных на то или иное оборудование . Фактически этот период можно охарактеризовать как период основного внимания к техническим средствам. Программное обеспечение рассматривалось, как удачно заметил Гантер , чем-то вроде "верхнего слоя краски на аппаратуре".

В следующий период более актуальной стала проблема создания программного обеспечения. Во-первых, велись разработки алгоритмов машинной графики - генерация примитивных элементов, интерполяция, аппроксимация, формы и методы представления изображений и т.д.; во-вторых, создавались инструментальные средства машинной графики - графические языки, пакеты процедур, языки диалога.

Постепенно сформировалось представление о программном продукте как о промышленном изделии, что выдвинуло проблему стандартизации графического программного обеспечения. Развитие сетей ЭВМ, оснащенных терминальными устройствами различных типов, потребовало обеспечить независимость программного обеспечения от аппаратуры.








Дата добавления: 2015-01-29; просмотров: 923;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.