ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/rt/aniso.c
(Generate patch)

Comparing ray/src/rt/aniso.c (file contents):
Revision 2.18 by greg, Tue May 19 17:09:06 1992 UTC vs.
Revision 2.19 by greg, Wed May 20 11:01:40 1992 UTC

# Line 149 | Line 149 | double  omega;                 /* light source size */
149                  h[0] = ldir[0] - np->prdir[0];
150                  h[1] = ldir[1] - np->prdir[1];
151                  h[2] = ldir[2] - np->prdir[2];
152 <                dtmp = DOT(h,np->pnorm);
153 <                dtmp = DOT(h,h) - dtmp*dtmp;
152 >                dtmp = DOT(h,h);
153                  if (dtmp > FTINY*FTINY) {
154 <                        dtmp1 = DOT(h,np->u);
155 <                        dtmp1 = dtmp1*dtmp1 / (au2*dtmp);
156 <                        dtmp2 = DOT(h,np->v);
157 <                        dtmp2 = dtmp2*dtmp2 / (av2*dtmp);
158 <                        dtmp = 2. - 2.*DOT(ldir,np->prdir);
159 <                        dtmp *= dtmp1 + dtmp2;
154 >                        dtmp1 = DOT(h,np->pnorm);
155 >                        dtmp = 1.0 - dtmp1*dtmp1/dtmp;
156 >                        if (dtmp > FTINY*FTINY) {
157 >                                dtmp1 = DOT(h,np->u);
158 >                                dtmp1 = dtmp1*dtmp1 / au2;
159 >                                dtmp2 = DOT(h,np->v);
160 >                                dtmp2 = dtmp2*dtmp2 / av2;
161 >                                dtmp = (dtmp1 + dtmp2) / dtmp;
162 >                        }
163                  } else
164                          dtmp = 0.0;
165                                                  /* gaussian */

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines