Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Алгоритм Кируса - Бека

Двумерное отсечение

 

Есть область (видимая или невидимая) и через неё проходит отрезок.

Исходные данные: выпуклая область отсечения.

 

(рис. 1)

 

Алгоритм Кируса - Бека работает только с выпуклыми областями.

 

Используем понятие - внутренняя нормаль, т.е. если любая принадлежит ребру, b в другой границе окна, то произведение м.б. любым внутренним вектором на внутренней нормали, проведенной из этой же , будет положительно т.к. любой угол < 900.

P2
(рис.2)

Если применить к внешней нормали, то . P1

Произведение вектора на внешнюю нормаль будет всегда отрицательным.

Пусть есть отрезок (P1, P2) (рис.2), представим его в параметрическом виде.

P(t) = P1 + (P2 - P1) t, где t - параметр (расстояние от начальной до конечной ) .

 

Пусть какая-то точка F будет являться граничной точкой окна, тогда из вышесказанного мы можем сказать, что для отрезка (P1, P2) справедливо следующие:

1. П[ P(t) - F ] < 0, когда [ P(t) - F ] направлен во вне R.

2. n[ P(t) - F ] = 0 --

[ P(t) - F ] плоскости, проходящей через точку F и перпендикулярной нормали.

 

3. n [ P(t) - F ] > 0, когда [ P(t) - F ] направлен во внутрь R.

 

Выводы:

1. Бесконечная прямая пересекает замкнутую выпуклую область ровно в двух точках и это справедливо для n - мерного пространства.

2. Пусть эти 2 точки одному ребру или граничной плоскости, тогда выражение n[ P(t) - F ] = 0 будет иметь только одно решение.

3. Если точка F ребру для которого вектор n внутренняя нормаль, то точка P(t) будет являться точкой пересечения данного отрезка с указанной граничной плоскостью.

 

Пример 1. Частично видимый отрезок.

 

 

(рис.3)

 

 

Уравнение прямой P1P2 = 0,2(X - 6).

Запишем этот отрезок в параметрическом виде т.е.:

P(1) = [-1, 1] + [10, 2] t = (10t - 1) i + (2t + 1) j, 0 <= t <= 1,

i, j - нормальные единичные вектора.

Зададим в окне нормали ,

а) Для удобства вычисления допустим, что F = (0,0),

тогда [ P(t) - F ] = (10t - 1)i + (2t + 1)j.

Рассмотрим произведение nл[ P(t) - F] = 10t - 1 = 0 t = 0,1.

Подставляем t в наше параметрическое уравнение,

т.е. P(0,1) = [-1,1] + [10,2] 0,1 = [0,1, 2].

б) Берем точку F = (8,4).

Опять находим вектор.

[ P(t) - F ] = (10t - 0)i + (2t - 3)j

nn[ P(t) - i ] = 10t -8 = 0 t = 0,9

nн[ P(t) - F ] = 2t + 1 = 0 t = - ½ - отвергаем

nв[ P(t) - F ] = - (2t -3) = 0 t = 3/2 - отвергаем

 

Для nн, nв параметр t не лежит в заданной области. Эти точки t нам не нужны.

Подставляем t = 0,9 в параметрическое уравнение P(0,9) = [ 8, 2,8]

Отсюда , что видимый участок лежит в пределах. или

[0;1,2] ¸ [8;2,8].

Пример 2. Невидимый нетривиальный отрезок.

(рис. 4)

 

а) Допускаем, что пересекается с какой то стороной.

б) Перемножаем на все нормали.

в) Приравниваем n = 0.

г) Смотрим так это или не так.

Составляем параметрическое уравнение.

P(t) = [ 6, -2] + [ 4, 3]t

 

 

P5P6 не является тривиально невидимым.

л -3/2 = t; п 1/2 = t; н 2/3 = t; в 2 = t; - не верно => важна ориентация отрезка.

Если взять ориентацию отрезка P5 à P6, то получается что отрезок пересекает сначала правое, а затем нижнее ребро, но такого быть не может

такие параметры не подходят.

Из приведенного выше примера следует, что для правильного подбора параметров, нужно учитывать ориентацию отрезка.

 

<== предыдущая лекция | следующая лекция ==>
II. Interpenetration of stages | Формализованный алгоритм Кируса - Бека
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 773; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.