У нас есть множество копланарных точек, которые определяют замкнутый контур, которые являются против часовой стрелки. Цикл гарантированно не будет самопересекающимся.
Мы хотим вычислить нормальное
У нас есть два вопроса.
Для точек, близких к коллинеарным, точность с плавающей точкой приводит к вычислению ошибочных нормалей с использованием перекрестного произведения.
Для вогнутой замкнутой петли некоторые нормали будут указывать противоположный путь.
Наше решение состоит в том, чтобы вычислить нормаль для всех последовательных сегментов, которые определяют замкнутый цикл. Таким образом, проблема 1 может быть преодолена путем отбрасывания внешних вычисленных нормалей. Проблему 2 можно преодолеть, зная, что направление большинства нормалей будет правильным.
Кажется, это работает, но очень дорого.
Есть ли более простое, дешевое, более элегантное решение?