Скачиваний:
15
Добавлен:
05.04.2013
Размер:
15.74 Кб
Скачать

Отсечение - 3.4. Алгоритм Кируса-Бека A.l:link { text-decoration: none; font-size: 8pt; color: 666666; } A.l:hover { text-decoration: none; font-size: 8pt; color: 666666; } A.l:active { text-decoration: none; font-size: 8pt; color: 666666; } A.l:visited { text-decoration: none; font-size: 8pt; color: 666666; } A.std:link { text-decoration: none; font-size: 11pt; font-weight: bold; color: 8E5717; } A.std:hover { text-decoration: none; font-size: 11pt; font-weight: bold; color: 7F0000; } A.std:active { text-decoration: none; font-size: 11pt; font-weight: bold; color: 8E5717; } A.std:visited { text-decoration: none; font-size: 11pt; font-weight: bold; color: 8E5717; } A.li:link { text-decoration: none; font-size: 10pt; font-weight: bold; color: 666666; } A.li:hover { text-decoration: none; font-size: 10pt; font-weight: bold; color: 666666; } A.li:active { text-decoration: none; font-size: 10pt; font-weight: bold; color: 666666; } A.li:visited { text-decoration: none; font-size: 10pt; font-weight: bold; color: 666666; } A.lil:link { text-decoration: none; font-size: 11pt; color: 666666; } A.lil:hover { text-decoration: none; font-size: 11pt; color: 7F0000; } A.lil:active { text-decoration: none; font-size: 11pt; color: 666666; } A.lil:visited { text-decoration: none; font-size: 11pt; color: 666666; } Алгоритмические

основы Математические

основы Flash 5 CorelDraw 10 3D Studio Max3 [программа] [тесты] [лабораторные] [вопросы] [литература]

3. Отсечение

3.4. Алгоритм Кируса-Бека Для создания надежного алгоритма отсечения нужно иметь хороший метод определения местоположения относительно окна (внутри, на границе или вне его) точки, принадлежащей отрезку. Для этой цели в алгоритме Кируса-Бека используется вектор нормали. Возьмем выпуклую отсекающую область R. Хотя R не обязана быть двумерной, в примерах, приведенных в данном разделе, предполагается, что она двумерна. Итак, R может быть любым плоским выпуклым многоугольником. Она не должна быть вогнутым многоугольником. Внутренняя нормаль n в произвольной точке а, лежащей на границе R, удовлетворяет условию: n · (b - а) >= 0, где b - любая другая точка на границе R. Чтобы убедиться в этом, вспомним, что скалярное произведение двух векторов V1 и V2 равно: V1V2 · |V1||V2| · cos θ, где θ - это меньший из двух углов, образованных V1 и V2. Заметим, что если θ = π/2, то cos θ = 0 и V1 · V2 = 0, т. е. когда скалярное произведение пары векторов равно нулю, то они перпендикулярны. На рис. 3.3 показана выпуклая область R, т. е. отсекающее окно. Там же показаны внешняя (наружная) nн и внутренняя nв нормали к границе окна, исходящие из точки а, лежащей на этой границе. Кроме того, на рис. 3.3 показаны еще несколько векторов, проведенных из точки а в другие точки на границе окна. Угол между nв и любым из таких векторов всегда принадлежит интервалу -π/2

Соседние файлы в папке exilim