Параллельное программирование



              

Особенности применения косинуса как функции меры угла


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

.

Составим по (6.11) симметричную матрицу S, включенную в табл. 6.1

косинусов углов между всеми нормалями к граням верхней (нижней) поверхности выпуклого многогранника R.

Таблица 6.1.

ГраньНормальN1 N2... Nr+n
p1 N1 1 cos(N1,N2)...cos(N1,Nr+n)
p2 N2 cos (N2,N1) 1...cos(N2,Nr+n)
... ............ ...
pr Nrcos(Nr,N1)cos(Nr,N2) ... cos(Nr,Nr+n)
pr+1 Nr+1 cos(Nr+1,N1)cos(Nr+1,N2)... cos(Nr+1,Nr+n)
... ...............
pr+n Nr+n cos(Nr+n, N1) cos(Nr+n,N2)

...

1

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

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

Поясним выбор последовательности n косинусов.

Выбранная грань может быть параллельна некоторой другой грани или координатной плоскости, т.е. угол между их нормалями может быть равен либо нулю, либо

. Очевидно, такие грани не могут быть образующими одной вершины.

На рис. 6.6 Qнижн={p1, p2, p3, p4}.

Пример, показывающий, когда грани не могут быть образующими одной вершины

Рис. 6.6.  Пример, показывающий, когда грани не могут быть образующими одной вершины

Таблица косинусов углов имеет вид

Таблица 6.2.

ГраньНормальN1 N2N3 N4
p1 N1 1 010
p2 N2 0 101
p3 N3 1 010
p4 N4 0 1 0

Из первой строки, допуская лишь одну единицу cos(N1,N1)=1), находим возможные образующие {p1, p2}. При этом поиск элементов последовательности ведем слева направо. Проверка подтверждает правильность выбора вершины A.


Содержание  Назад  Вперед