Видимость ребер многогранника

Взаимное пересечение многогранников.

Два многогранника могут пересекаться по одной или двум замкнутым ломанным линиям, для построения которых находят сначала точки пересечения ребер одного многогранника с гранями другого, а затем – ребер второго с гранями первого. Соединяя последовательно полученные точки, строят искомую ломанную, каждое звено которой представляет собой прямую пересечения двух граней – грани первого с гранью второго многогранников. Итак, построение линии пересечения двух многогранников сводится к решению задачи на пересечение прямой линии с многогранниками (или на взаимное пересечение двух плоскостей – граней многогранников). Соединять нужно лишь те точки, которые одновременно принадлежат одним и тем же граням пересекающихся многогранников.

Для того, что бы определить видимо ли какое-то ребро многогранника, необходимо сначала вспомнить, что многогранник представляет собой фигуру, ограниченную несколькими плоскостями, а ребра его – это линии пересечения этих плоскостей.

Введем понятие лицевых и нелицевых граней. Лицевой будем считать ту грань, скалярное произведение внутренней нормали которой на вектор наблюдения (0 0 -1 0) дает положительный результат (или, что то же самое, внешней на ту же точку – отрицательный результат).

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

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



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: