Подразделение поверхности - Subdivision surface

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

Первые три шага Кэтмелл-Кларк подразделение куба с поверхностью подразделения ниже

Обзор

Алгоритм разбиения поверхностей: рекурсивный в природе. Процесс начинается с заданной полигональной сетки. А Схема уточнения затем применяется к этой сетке. Этот процесс берет эту сетку и разделяет ее, создавая новые вершины и новые грани. Положения новых вершин в сетке вычисляются на основе положений соседних старых вершин. В некоторых схемах уточнения положения старых вершин также могут быть изменены (возможно, в зависимости от положения новых вершин).

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

Поверхность предельного подразделения - это поверхность, полученная в результате этого процесса итеративно применяемая бесконечно много раз. Однако на практике этот алгоритм применяется ограниченное и, как правило, довольно небольшое количество раз.

Математически окрестность необычной точки (не 4-валентный узел для сеток с квадратичным уточнением) поверхности подразделения представляет собой сплайн с параметрически особая точка [1].

Схемы доработки

Схемы уточнения поверхности подразделения можно в целом разделить на две категории: интерполяционные и аппроксимирующие. Схемы интерполяции необходимы, чтобы соответствовать исходному положению вершин в исходной сетке. Примерных схем нет; они могут и будут корректировать эти позиции по мере необходимости. В общем, аппроксимирующие схемы имеют большую плавность, но пользователь в меньшей степени контролирует результат. Это аналогично сплайн поверхности и кривые, где Кривые Безье требуются для интерполяции определенных контрольных точек, а B-сплайны не.

В схемах разбиения поверхностей есть еще одно деление: тип полигона, с которым они работают. Некоторые работают с четырехугольниками (четырехугольниками), а другие работают с треугольниками.

Примерные схемы

Аппроксимация означает, что предельные поверхности аппроксимируют исходные сетки и что после подразделения вновь созданные контрольные точки не находятся на предельных поверхностях. Существует пять примерных схем подразделения:

  • Кэтмелл и Кларк (1978) обобщает бикубический однородный B-сплайн вставка узла. Для произвольных исходных сеток эта схема генерирует предельные поверхности, которые C2 непрерывны всюду, кроме необычных вершин, где они C1 непрерывный (Peters and Reif 1998) [2].
  • Ду-Сабин - Вторая схема деления была разработана Ду и Сабином (1978), которые успешно расширили метод срезания углов Чайкина (Георгий Чайкин, 1974[3]) для кривых к поверхностям. Они использовали аналитическое выражение биквадратичный равномерный B-сплайн поверхность для создания процедуры их подразделения для производства C1 предельные поверхности с произвольной топологией для произвольных начальных сеток. Вспомогательная точка может улучшить форму подразделения Ду-Сабина. [4].
  • Петля, Triangles - Loop (1987) предложил свою схему подразделения, основанную на квартирах четвертой степени. коробчатый шлиц шести векторов направления, чтобы обеспечить правило для генерации C2 непрерывные предельные поверхности везде, кроме необычных вершин, где они находятся C1 непрерывный (Зорин 1997).
  • Схема подразделения Mid-Edge - Схема среднего краевого подразделения была предложена независимо Peters-Reif (1997) [5] и Хабиб-Уоррен (1999) [6]. Первый использовал среднюю точку каждого края для построения новой сетки. В последнем использовался четырехсторонний коробчатый шлиц построить схему. Эта схема генерирует C1 непрерывные предельные поверхности на исходных сетках произвольной топологии.
  • √3 схема деления - Эта схема была разработана Коббельтом (2000).[7] и предлагает несколько интересных функций: обрабатывает произвольные треугольные сетки, C2 непрерывна всюду, кроме необычных вершин, где она C1 непрерывно и при необходимости предлагает естественное адаптивное уточнение. У него как минимум две особенности: это Двойной Схема для треугольных сеток, и она имеет более медленную скорость уточнения, чем основные. (Самым медленным подразделением является подразделение Midedge, которое можно было бы назвать подразделением √2, поскольку два шага уменьшают расстояние вдвое.)

Схемы интерполяции

После подразделения контрольные точки исходной сетки и новые сгенерированные контрольные точки интерполируются на предельной поверхности. Самая ранняя работа была так называемой схема бабочки Дина, Левина и Грегори (1990), которые расширили схему четырехточечного интерполяционного подразделения для кривых до схемы подразделения для поверхности. Зорин, Шредер и Свелден (1996) заметили, что схема «бабочка» не может генерировать гладкие поверхности для нерегулярных треугольных сеток, и таким образом модифицировали эту схему. Коббельт (1996) далее обобщил схему четырехточечного интерполяционного подразделения для кривых на схему подразделения тензорного произведения для поверхностей.

  • Ду-Сабин, Quads - обобщение биквадратичной равномерной B-шлицы
  • Бабочка, Треугольники - названы в честь формы схемы
  • Midedge, Квадроциклы
  • Коббельт, Quads - вариационный метод деления, который пытается преодолеть недостатки равномерного деления

Ключевые события

внешняя ссылка

Рекомендации

  1. ^ Дж. Петерс и У. Рейф: Подразделение поверхностей, Серия Springer, Монография 3 по геометрии и вычислениям, 2008 г., Дои
  2. ^ Дж. Петерс и У. Рейф: Анализ обобщенных алгоритмов разбиения на B-сплайны, SIAM J из Нумер. Анальный. 32 (2) 1998, стр.728-748
  3. ^ «Кривые Чайкина в обработке».
  4. ^ К. Карчаускас и Я. Петерс: Точечно-усиленный биквадратный C1 подразделения поверхностей, Графические модели, 77, стр.18-26 [1]
  5. ^ Дж. Петерс и У. Рейф: Простейшая схема разбиения для сглаживания многогранников, Транзакции ACM на графике 16 (4) (октябрь 1997 г.) стр.420-431, Дои
  6. ^ А. Хабиб и Дж. Уоррен: Вставка ребер и вершин для класса C1 подразделения поверхностей, Компьютерный геометрический дизайн 16 (4) (май 1999 г.) стр.223-247, Дои
  7. ^ Л. Коббельт: √3-подразделение, 27-я ежегодная конференция по компьютерной графике и интерактивным техникам, Дои
  8. ^ Ульрих Райф. 1995. Единый подход к алгоритмам разбиения вблизи необычных вершин. Компьютерный геометрический дизайн. 12(2)153-174
  9. ^ Йос Стам, "Точная оценка поверхностей подразделения Катмалла-Кларка при произвольных значениях параметров", Труды SIGGRAPH'98. In Computer Graphics Proceedings, ACM SIGGRAPH, 1998, 395-404.