Читать в оригинале

<< Предыдущая Оглавление Следующая >>


3.4.4. БИКУБИЧЕСКИЕ ПОВЕРХНОСТИ

С помощью бикубических поверхностей можно описать гладкую поверхность произвольной формы [1,79,99,104]. Обычно этими функциями описывают смежные участки криволинейной поверхности, добиваясь гладкости в местах стыка в результате координатного совпадения смежных угловых точек и совпадения первых производных. Рассматриваемые функции являются функциями наименьшей степени, с помощью которых достигается гладкость составной поверхности. Известно [41,49,60], что участок такой поверхности , ,  может быть представлен параметрически, например, уравнение для :

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

Аналогичные выражения существуют для , . Обозначим  матрицы размера  коэффициентов при переменных в выражениях для , ,  соответственно и введем векторы-строки , , тогда [60]

; ; .                 (3.4.15)

Основной задачей конструирования криволинейной поверхности из бикубических участков является задание коэффициентов бикубического многочлена  внутри каждого участка через координаты общих угловых точек, касательные вектора в этих точках или систему, так называемых управляющих точек. В зависимости от типа имеющихся исходных данных о геометрии моделируемой поверхности применяют представление зависимостей (3.4.15) в виде форм Эрмита, Безье, В-сплайнов [60, 146, 160]. Форма Эрмита предполагает построение бикубического участка в виде изогнутого четырехугольника, к углам которого могут быть пристыкованы другие подобной формы задания: ; ; , где

,

 - матрицы  элементов, которые строятся по информации о координатах четырех угловых точек , , и частных производных , , , , ,  в этих точках. Например,

.

Выражения для  определяются аналогично путем замены в последнем выражении  на  и  соответственно. Здесь переменная  меняется от 0 до 1 при переходе от точки  до  и  до , а переменная  – соответственно при переходе от точки  до  и от  до .

При переходе от одного участка бикубической поверхности к другому должны обеспечиваться совпадение координат всех точек граничных кривых и совпадение первых производных в этих точках. Это условие достигается идентичностью соответствующих строк (при сшивке кусков вдоль ребра ) или столбцов (при сшивке вдоль ребра ) [54].

Бикубический многочлен в форме Эрмита позволяет достигать непрерывности производных нулевого и первого порядка. Заметим для сравнения, что в полигональном поле достигается непрерывность только нулевого порядка, что проявляется на изображении в виде резких изломов. Недостатком задания кривых поверхностей в форме Эрмита является сложность интерпретации и получения значений частных производных (тангенсов углов наклона касательных векторов) в угловых точках.

Бикубические поверхности в форме Безье имеют вид [60]

; ; ;

где

,

a  – матрицы  соответственно координат  для 16 управляющих точек.

Так,

,

где , , ,  – координаты четырех угловых точек, а четыре тройки остальных точек с индексами 21, 22, 12; 13, 23, 24; 43, 33, 34; 42, 32, 31 являются концами касательных векторов, как это показано на рис. 3.4.9.

105.jpg

Рис. 3.4.9. Размещение угловых и управляющих точек

Таким образом, геометрия бикубического куска определяется положением 16 управляющих точек. Пространственное положение этих точек значительно легче интерпретируется, чем параметры в форме Эрмита.

Для гладкого перехода от одного бикубического куска в другой необходимо [54] пространственное совпадение четырех смежных управляющих точек и отсутствие изломов в стыке соприкасающихся плоских управляющих полей в направлении поперек стыка.

Бикубические куски в форме В-сплайнов имеют вид

; ; ,

где

,

а  – задают соответственно координаты 16 управляющих точек.

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

Метод трассирования лучей требует определения точки пересечения луча с такой поверхностью. Координаты этой точки могут быть установлены при решении следующей системы трех бикубических уравнений с тремя неизвестными :

; ; ,

где  – переменная в параметрической форме представления светового луча;  – проекции направляющего вектора светового луча;  – координаты точки испускания светового луча (источник света или центр проекции), заметим, что в этой точке . Геометрический смысл решения последней системы заключается в том, что точка пересечения прямой , ,  с поверхностью , ,  одновременно принадлежит и прямой, и поверхности.

Система приведенных уравнений сводится к одному уравнению шестой степени, что указывает на невозможность его аналитического решения. Численное решение достигается методом Ньютона [16,74,138], посредством которого получают тройку значений , первые два из которых определяют положение точки пересечения на поверхности, а последнее используется для определения видимой точки из серии претендующих для данного светового луча.

Если найденная точка видимая, то необходимо определить ее яркость, для чего, в свою очередь, следует найти уравнение нормального вектора в данной точке поверхности. Известно [23], что уравнение ненормированной нормали  к поверхности вида , ,  в точке  имеет вид

,

где  – орты осей  соответственно;  – оператор Якобиана [23]. Для нахождения компонент нормального вектора введем ; . В этих обозначениях определим выражения для следующих частных производных, входящих в якобианы:

; ;

; ;

; .

После их подстановки можно получить окончательное выражение для вектора нормали:

         (3.4.16)

Для определения освещенности бикубической поверхности от небесного излучателя, а также в случаях преломления и зеркального отражения необходимо знать не только положение, но и направление нормального вектора. Из дифференциальной геометрии [44] известно, что положительные направления линий  и нормаль, найденная по правилу (3.4.16), образуют правую систему осей. Поэтому управлять ориентацией нормального вектора можно посредством выбора направления линий  и  на этапе создания математической конструкции объекта. На рис.3.4.9 показан вектор внешней нормали для выбранных направлений.

Преобразование координат, используемое для перемещения бикубической поверхности, приводит к изменению вида матриц . Пусть поверхность задана в форме Безье: ; ; , а система координат , в которой определена поверхность, и система  связаны соотношением , где  – матрица  элемента координатного преобразования. Тогда в системе  -e элементы геометрических матриц  определяются по формуле

,

где, в частности,  – -e элементы матриц ; , . При пространственном перемещении и вращении бикубического участка ориентация нормали по отношению к самой поверхности остается неизменной, т. е. если нормаль была направлена в сторону выпуклости, то это свойство сохранится.

 



<< Предыдущая Оглавление Следующая >>