CGAL: вывод от соседа, когда треугольника нет

Поэтому мне интересно, что происходит в триангуляции Делоне CGAL, когда вы вызываете функцию соседа для соседа, который не существует. В документации (ВОТ) это говорит об этом:

The neighbor with index i is the neighbor which is opposite to the vertex with index i.

Face_handle  f.neighbor ( int i) const   //returns the neighbor i of f.
//Precondition:     0 ≤ i ≤ 2.

Но не все треугольники могут иметь 3 соседей. Краевые и угловые треугольники будут соседствовать только 2. Учитывая, что теперь он должен возвращать дескриптор Face_handle, что произойдет с соседями, которых не существует? Может быть, это будет NULL? Как я могу это проверить?

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

Есть идеи?

3

Решение

Увидеть документация.

CGAL вводит бесконечная вершина, следовательно, у каждого «граничного ребра» есть дополнительный сосед, который представляет собой бесконечный треугольник, состоящий из двух вершин вашего ребра и бесконечной вершины.

2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector