7.3. Источник на бесконечности

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

Общая постановка задачи:

Имея точку источника света (xS, yS, zS) и вершину объекта (xP, yP, zP) , мы хотим получить проекцию вершины объекта на плоскость z=0, т.е. точку тени (x5, y5, z5).

Из подобных треугольников получаем:

решая это уравнение относительно x5, получаем:

если принять, что L это вектор из точки P к источнику света, то точку S можно выразить как

 

            S = P - aL        (3)

 

т.к. мы производим проекцию на плоскость z=0, то уравнение (3) можно переписать в следующем виде:       0 = zp - azs                (4)                           или                   a = zp / zs                (5)

решая (3) относительно x5 и y5, получаем:

 

Теперь имея координаты точки P в мировом координатном пространстве, можно получить её проекцию на плоскость z=0 просто путём умножения на матрицу М5:  S = M5 * P             (8)

 

 

Hosted by uCoz