Render.ru

NURBS-примитивы

#1
Решил занятся 3D-графикой, учусь по книгам, только непонял чем отличается NURBS-примитив от NURBS-полигон.
 
#3
Простейшим вариантом являются треугольные полигоны, ибо, как известно, через любые три точки в пространстве можно провести плоскость. Каждый полигон задается набором точек. Лучше всего задавать набор точек в том порядке, в каком они расположены относительно внешней нормали полигона, так как в данном случае полностью решается проблема удаления нелицевых граней без дополнительных затрат при последующей обработке. Точка же задается тремя координатами - x, y, z. Таким образом, Вы можете задать 3-мерный объект как массив или как структуру.

IIIIIIIIIIIIIIIIIIIIII
Историю сплайнов принято отсчитывать от момента появления первой работы Шенберга в 1946 году. Сначала сплайны рассматривались как удобный инструмент в теории и практике приближения функций. Однако довольно скоро область их применения начала быстро расширяться, и обнаружилось, что существует очень много сплайнов самых разных типов. Сплайны стали активно использоваться в численных методах, в системах автоматического проектирования и автоматизации научных исследований, во многих других областях человеческой деятельности и, конечно, в компьютерной графике.
Сам термин "сплайн" происходит от английского spline. Именно так называется гибкая полоска стали, при помощи которой чертежники проводили через заданные точки плавные кривые. В былые времена подобный способ построения плавных обводов различных тел, таких как, например, корпус корабля, кузов автомобиля был довольно широко распространен в практике машиностроения. В результате форма тела задавалась при помощи набора очень точно изготовленных сечений - плазов. Появление компьютеров позволило перейти от этого, плазово-шаблонного, метода к более эффективному способу задания поверхности обтекаемого тела. В основе этого подхода к описанию поверхностей лежит использование сравнительно несложных формул, позволяющих восстанавливать облик изделия с необходимой точностью. Ясно, что для большинства тел, встречающихся на практике, вряд ли возможно отыскание простых универсальных формул, которые описывали бы соответствующую поверхность глобально, то есть, как принято говорить, в целом. Это означает, что при решении задачи построения достаточно произвольной поверхности обойтись небольшим количеством формул, как правило, не удастся. Вместе с тем аналитическое описание (описание посредством формул) внешних обводов изделия, то есть задание в трехмерном пространстве двумерной поверхности, должно быть достаточно экономным. Это особенно важно, когда речь идет об обработке изделий на станках с числовым программным управлением. Обычно поступают следующим образом: задают координаты сравнительно небольшого числа опорных точек, лежащих на искомой поверхности, а через эти точки проводят плавные поверхности. Именно так поступает конструктор при проектировании кузова автомобиля (ясно, что на этой стадии процесс проектирования сложного объекта содержит явную неформальную составляющую). На следующем шаге конструктор должен получить аналитическое представление для придуманных кривых или поверхностей. Вот для таких задач и используются сплайны.
Средства компьютерной графики, особенно визуализация, существенно помогают при проектировании, показывая конструктору, что может получиться в результате, и давая ему многовариантную возможность сравнить это с тем, что сложилось у него в голове.
Достаточно типичной является следующая задача: по заданному массиву точек в пространстве построить поверхность либо проходящую через все эти точки (задача интерполяции), либо проходящую вблизи от этих точек (задача сглаживания).
Сглаживающая поверхность строится относительно просто, в виде так называемого тензорного произведения. Так принято называть поверхности, описываемые параметрическими уравнениями вида
r(u,v)=Si= 0 m Sj=0n ai(u)bj(v)Vij
Рассмотрим элементарную бикубическую поверхность Безье. Параметрические уравнения фрагмента этой поверхности имеют следующий вид:
r(u, v)=Si= 0 3 Sj=03 C3jC3iui(1-u)3-ivj(1-v)3-jVij
0<=u<=1; 0<=v<=1
Элементарная бикубическая поверхность Безье обладает следующими свойствами:
· лежит в выпуклой оболочке порождающих ее точек;
· является гладкой поверхностью;
· упираясь в точки Vоо, Vоз, Vзо, Vзз, касается исходящих из них отрезков контрольного графа заданного набора.
 
Сверху