Методом Гуро можно получить сглаженное изображение. Для того чтобы изобразить объект методом построчного сканирования, нужно в соответствии с моделью освещения рассчитать интенсивность каждого пиксела вдоль сканирующей строки. Нормали к поверхности аппроксимируются в вершинах многоугольников так, как описано в предыдущем разделе. Однако сканирующая строка не обязательно проходит через вершины многоугольника (рис. 11.10). При закраске Гуро сначала определяется интенсивность вершин многоугольника, а затем с помощью билинейной интерполяции вычисляется интенсивность каждого пиксела на сканирующей строке.
Рис. 11.10. Интерполяция закраски.
Рассмотрим, например, участок полигональной поверхности на рис. 11.10. Значение интенсивности в точке P определяется линейной интерполяцией интенсивности в точках Q и R. Для получения интенсивности в точке Q - пересечении ребра многоугольника со сканирующей строкой - нужно линейной интерполяцией интенсивностей A и B найти
, где u=AQ/AB.
Аналогично для получения интенсивности R линейно интерполируются интенсивности в вершинах B и C, т. е.
|
|
, где w=BR/BC.
Наконец, линейной интерполяцией по строке между Q и R находится интенсивность P, т. е.
, где t=QP/QR.
Значения интенсивности вдоль сканирующей строки можно вычислять инкрементально. Для двух пикселов в t1 и t2 на сканирующей строке
Вычитая, получим, что вдоль строки