Warning: Trying to access array offset on value of type null in /home/site/wwwroot/lib/plugins/move/action/rename.php on line 42

Warning: Cannot modify header information - headers already sent by (output started at /home/site/wwwroot/lib/plugins/move/action/rename.php:42) in /home/site/wwwroot/inc/Action/Export.php on line 106

Warning: Cannot modify header information - headers already sent by (output started at /home/site/wwwroot/lib/plugins/move/action/rename.php:42) in /home/site/wwwroot/inc/Action/Export.php on line 106
texture_index

Texture Index from Spherical Harmonics Parameters - Version 5

macro Texture_Index(sh, t)
  {
    prm = {
       fn f(c) {
          def s = Concat(sh,"_",c);
          return If(Prm_There(s), s^2,0); 
       }
       return 1 
       +1/5  (f(c20)+f(c21p)+f(c21m)+f(c22p)+f(c22m))
       +1/9  (f(c40)+f(c41p)+f(c41m)+f(c42p)+f(c42m)+f(c43p)+f(c43m)+f(c44p)+f(c44m))
       +1/13 (f(c60)+f(c61p)+f(c61m)+f(c62p)+f(c62m)+f(c63p)+f(c63m)+f(c64p)+f(c64m)+f(c65p)+f(c65m)+f(c66p)+f(c66m))
       +1/17 (f(c80)+f(c81p)+f(c81m)+f(c82p)+f(c82m)+f(c83p)+f(c83m)+f(c84p)+f(c84m)+f(c85p)+f(c85m)+f(c86p)+f(c86m)+f(c87p)+f(c87m)+f(c88p)+f(c88m));
    } : t
 }

Usage

 str…
    PO_Spherical_Harmonics(sh, 8)
    Texture_Index(sh, 0)

On termination of refinement the second argument of the Texture_Index macro is updated.