| OCR Text |
Show 32 edges. It was considered essential that the interpolation scheme be inexpensive to calculate, because it would be evaluated many times in the course of ray tracing the final image. The initial plan was that a triangle vertex would be assigned a radiosity value that was the average of the radiosity results from all triangles containing that vertex. However, after the surface subdivision software was modified to produce data structures where the vertices were shared objects, it was recognized that this scheme would not always produce a C0 interpolant. Discontinuities could arise when surface subdivision produced vertices located along the edge of a triangle. If the vertex interp·olation value does not match the barycentric interpolation value along the edge, discontinuities would result. 4. 7.1 Shepard's Method The first attempt to solve this problem was to try to avoid the adaptive subdivision consequences. Shepard's method [31] was employed to provide a parametric distance-weighted interpolant over the surface, where the sample value for a triangle was associated the the parametric location of the triangle's barycenter. This formula interpolates a value r(u, v) from a set of samples {ri(ui, vi)} with the following formula: (4.6) where 1 Wj(u,v) = 1 . (4.7) [(u- Uj)2 + (v- vi)l]1 To speed up this interpoJ~t, an intermediate stage was added. Shepard's method was evaluated at evenly spaced parametric grid points in the parametric domain of the surface. Later, when the interpolant was being evaluated on a pixel by pixel basis, bilinear interpolation was used on the grid points in the parametric |