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

Comparing ray/src/cal/cal/LaFortune.cal (file contents):
Revision 1.1 by greg, Tue Mar 18 16:16:37 2014 UTC vs.
Revision 1.3 by greg, Mon Jun 10 13:56:52 2019 UTC

# Line 2 | Line 2
2   { LaFortune reflectance model with N lobes }
3  
4          { Sample parameters (change these) }
5 < rho_d : 0.136465483630983;
6 < rho_s(i) : select(i, 0.144594472775860);
7 < Cx(i) : select(i, -0.605122636448704);
8 < Cy(i) : select(i, -0.664960041454502);
9 < Cz(i) : select(i, 0.586571000768196);
10 < n(i) : select(i, 29.629194300125050);
5 > rho_d : 0.017615787130711;
6 > rho_s : 0.654729812719232;
7 > Cx(i) : select(i, -0.75, -0.78);
8 > Cy(i) : select(i, -0.91, -.81);
9 > Cz(i) : select(i, .75, .83);
10 > n(i) : select(i, 30, 15);
11   NL : n(0);
12  
13                          { Useful functions }
14 max(a,b) : if(a-b, a, b);
14   abs(x) : if(x, x, -x);
15   noneg(x) : if(x, x, 0);
16  
17 <        { Normalization factor based on parameters }
17 >                { Normalization factor based on parameters }
18   snf(i) : (n(i)+2)/(2*PI*max(abs(Cx(i)),max(abs(Cy(i)),abs(Cz(i))))^n(i));
19  
20 <        { CHANGE THE FOLOWING TO MATCH NL }
21 < snfk(i) : select(i, snf(1));
20 >                { CHANGE THE FOLOWING TO MATCH NL }
21 > snfk(i) : select(i, snf(1), snf(2));
22  
23   { Note that we assume i and o vectors are normalized, both pointing away }
24  
25 < sum(i,dx,dy,dz) : if(.5-i, 0, sum(i-1) +
26 <                rho_s(i)*snfk(i)*noneg(Cx(i)*dx + Cy(i)*dy + Cz(i)*dz)^n(i));
25 > sum(i,dx,dy,dz) : if(.5-i, 0, sum(i-1,dx,dy,dz) +
26 >                snfk(i)*noneg(Cx(i)*dx + Cy(i)*dy + Cz(i)*dz)^n(i));
27  
28 < lafortune(ix,iy,iz,ox,oy,oz) : if( -iz*oz, 0, rho_d/PI + sum(NL,ix*ox,iy*oy,iz*oz) );
28 > lafortune(ix,iy,iz,ox,oy,oz) : if( -iz*oz, 0,
29 >                        rho_d/PI + rho_s*sum(NL,ix*ox,iy*oy,iz*oz) );

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines