Re: [SVG1.1] feDiffuseLighting calculation does not define I(x,y)

On Friday, June 1, 2007, 6:19:29 PM, Tor wrote:

TR> The normal calculation in section 15.14 defines N in terms of a
TR> function "I(x,y)", which does not appear to be defined.  I would guess
TR> this is intended to be some variety of intensity/luminance function,
TR> but it should be explicitly stated.

Hi, Tor. This is the official response from the SVG WG after your
issue you raised was discussed in the group.

Yes, it should be explicitly stated. Its not an intensity or luminance
function, however; the equations are computing the surface normal at a
given point of a surface made by treating the alpha channel as a
height field.

The text above those equations originally said "input alpha image
I(x,y)" but was then edited to the longer and slightly more readable
"input alpha image Ain (x,y)". Unfortunately, the same substitution
was not made to the equations, just the description.

We will fix this (in 1.1 errata and in 1.2 Filters module) as follows:
change "input alpha image Ain (x,y)" back to "input alpha image
I(x,y)" so it matches the longer set of equations, and change Z (x,y)
= surfaceScale * Ain (x,y) to Z (x,y) = surfaceScale * I(x,y).

(Please not that this is the image after any resampling produced by
filterRes or kernelUnitLength).

We are also aware that some diagrams would help in understanding the
3d lighting filters, and plan to add them.

 Chris Lilley          
 Interaction Domain Leader
 Co-Chair, W3C SVG Working Group
 W3C Graphics Activity Lead
 Co-Chair, W3C Hypertext CG

Received on Thursday, 12 July 2007 02:14:05 UTC