Поверхностные модели в системах трехмерной компьютерной графики. Косников Ю.Н. - 22 стр.

UptoLike

Составители: 

22
Функция отображения определяется пользователем и может быть как
линейной, так и нелинейной. Например, для случая, показанного на рисунке 2.1,
соответствие между системами координат примитива и текстуры может быть
задано парой линейных уравнений
,CBvAus
+
+
= (2.3)
,FEvDut
+
+
=
(2.4)
где
A,…,Fшесть числовых коэффициентов функции отображения. Для их
отыскания необходимо сформулировать ограничения на численные значения
координат и представить их в виде шести уравнений с этими коэффициентами. В
качестве ограничений для примера на рисунке 2.1 установим соответствие
элементов примитива и текстуры, обозначенных одинаковыми буквами
a,b и c:
для точки
a выражение (2.3) – 0=A·0+B·0+C, выражение (2.4) – 0=D·0+E·0+F,
для точки
b выражение (2.3) – 0.5=A·0+B·1+C, выражение (2.4) – 1=D·0+E·1+F,
для точки
c выражение (2.3) – 1=A·1+B·0+C, выражение (2.4) – 0=D·1+E·0+F.
Решение уравнений дает значения коэффициентов: A=E=1, B=0.5, C=D=F=0. В
итоге функция отображения принимает вид
s=u+0.5v,
t=v,
позволяющий вычислить текстурные координаты для любой точки примитива.
Линейная функция отображения реализуется наиболее просто и не требует
от вычислительной системы больших ресурсных затрат. Но она дает и самое
низкое качество текстурирования. Более качественное, но более медленное
текстурирование дает интерполяция текстурных координат квадратичной
параболой и сплайн-функцией.
Для криволинейных примитивов, например,
поверхностей второго порядка,
функция отображения принципиально является нелинейной. Ее вычисление
нужно выполнить для каждого элемента поверхности-примитива, что требует
довольно много вычислительного времени. Кроме того, с целью повышения
реалистичности отображения в современных графических системах применяют
мультитекстурирование, то есть смешивание на одном примитиве нескольких
                                                                               22
     Функция отображения определяется пользователем и может быть              как
линейной, так и нелинейной. Например, для случая, показанного на рисунке 2.1,
соответствие между системами координат примитива и текстуры может быть
задано парой линейных уравнений
                               s = Au + Bv + C ,                             (2.3)
                               t = Du + Ev + F ,                             (2.4)
где A,…,F – шесть числовых коэффициентов функции отображения.             Для их
отыскания необходимо сформулировать ограничения на численные значения
координат и представить их в виде шести уравнений с этими коэффициентами. В
качестве ограничений для примера на рисунке 2.1 установим соответствие
элементов примитива и текстуры, обозначенных одинаковыми буквами – a,b и c:
для точки a выражение (2.3) – 0=A·0+B·0+C, выражение (2.4) – 0=D·0+E·0+F,
для точки b выражение (2.3) – 0.5=A·0+B·1+C, выражение (2.4) – 1=D·0+E·1+F,
для точки c выражение (2.3) – 1=A·1+B·0+C, выражение (2.4) – 0=D·1+E·0+F.
Решение уравнений дает значения коэффициентов: A=E=1, B=0.5, C=D=F=0. В
итоге функция отображения принимает вид
                               s=u+0.5v,
                               t=v,
позволяющий вычислить текстурные координаты для любой точки примитива.
     Линейная функция отображения реализуется наиболее просто и не требует
от вычислительной системы больших ресурсных затрат. Но она дает и самое
низкое качество текстурирования. Более качественное, но более медленное
текстурирование   дает   интерполяция       текстурных   координат   квадратичной
параболой и сплайн-функцией.
     Для криволинейных примитивов, например, поверхностей второго порядка,
функция отображения принципиально является нелинейной. Ее вычисление
нужно выполнить для каждого элемента поверхности-примитива, что требует
довольно много вычислительного времени. Кроме того, с целью повышения
реалистичности отображения в современных графических системах применяют
мультитекстурирование, то есть смешивание на одном примитиве нескольких