При использовании четырех параметрических сплайнов в качестве составляющих набора однородных координат значение м> может оказаться не равным 1, и, следовательно, нужно будет при переходе к трехмерному представлению точек использовать перспективное деление: р(/<) = -qOO = -

i=0

Каждый компонент функции р(м) представляет собой рациональную функцию параметра и, и поскольку мы не накладывали никаких ограничений на расположение узлов, то эта функция относится к классу неравномерных рациональных В-сплайнов (NURBS nonuniform rational B-spline).

NURBS-кривые сохраняют все свойства, присущие трехмерным В-сплайнам, в частности ограниченность выпуклой оболочкой и непрерывность, но дополнительно к ним обладают и еще двумя уникальными свойствами, которые представляют особый интерес для задач компьютерной графики и автоматизации проектирования.

Если по отношению к В-сплайновой кривой или поверхности применить аффинное преобразование, то получим ту же функцию, что и В-сплайн, сформированный по исходному ансамблю опорных точек, подвергшихся тому же преобразованию. Поскольку перспективное преобразование не относится к классу аффинных, большинство геометрических объектов, состоящих из В-сплайновых кривых, будет искажаться при их выполнении, но как раз NURBS-кривые будут обрабатываться при таких преобразованиях корректно.

Квадратичные поверхности обычно определяются аналитически в неявной форме. Используя нерациональные сплайны, можно только приближенно представить такие поверхности. Однако можно показать, что аналитические квадратичные кривые являются частным случаем квадратичных NURBS-кривых. Следовательно, можно использовать единый метод моделирования, основанный на формировании NURBS-кривых, для создания практически всех распространенных типов криволинейных геометрических объектов (см. упр. 10.14 и 10.15).

10.9. Построение кривых и поверхностей Если уж в состав сцены включены объекты, состоящие из кривых и поверхностей, нам не обойтись без методов их воспроизведения. Существует несколько подходов к выполнению подобной процедуры. Первый подход- можно вычислить точки пересечения с таким объектом лучей, исходящих из центра проецирования и проходящих через определенные пиксели картинной плоскости. Однако вычисление пересечений с криволинейными объектами, если только они не представляют собой квадратичные поверхности (о них речь пойдет в разделе 10.11), требует решения нелинейных уравнений, что не так-то просто сделать, учитывая, что все вычисления следует выполнять в реальном масштабе времени. Второй подход состоит в том, чтобы вычислить массив вершин, принадлежащих криволинейному объекту, и построить на основе этого массива приближение криволинейного объекта множеством плоских из стандартного набора. Мы сосредоточим внимание именно на втором подходе и рассмотрим, как на его основе воспроизводить в графической системе параметрические полиномиальные кривые и поверхности.


⇐ Предыдущая| |Следующая ⇒