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

Comparing ray/src/util/genBSDF.pl (file contents):
Revision 2.36 by greg, Thu Jun 14 18:35:03 2012 UTC vs.
Revision 2.39 by greg, Mon Sep 10 18:06:08 2012 UTC

# Line 197 | Line 197 | print "\t<DataDefinition>\n";
197   print "\t\t<IncidentDataStructure>TensorTree$tensortree</IncidentDataStructure>\n";
198   print "\t</DataDefinition>\n";
199  
200 < # Start rtcontrib processes for compute each side
200 > # Start rcontrib processes for compute each side
201   do_tree_rtcontrib(0) if ( $doback );
202   do_tree_rtcontrib(1) if ( $doforw );
203  
204   }       # end of sub do_tree_bsdf()
205  
206 < # Run rtcontrib process in background to generate tensor tree samples
206 > # Run rcontrib process to generate tensor tree samples
207   sub do_tree_rtcontrib {
208          my $forw = shift;
209          my $matargs = "-m $bmodnm";
210 <        if ( !$forw || !$doback ) { $matargs .= " -m $fmodnm"; }
210 >        if ( !$forw || !$doback || $tensortree==3 ) { $matargs .= " -m $fmodnm"; }
211          my $cmd = "rcontrib $rtargs -h -ff -fo -n $nproc -c $nsamp " .
212                  "-e '$disk2sq' -bn '$ns*$ns' " .
213                  "-b '$ns*floor(out_square_x*$ns)+floor(out_square_y*$ns)' " .
# Line 245 | Line 245 | sub do_tree_rtcontrib {
245                          "| $cmd";
246          }
247   # print STDERR "Starting: $cmd\n";
248 <        system "$cmd" || die "Failure running rtcontrib";
248 >        system "$cmd" || die "Failure running rcontrib";
249          ttree_out($forw);
250   }       # end of do_tree_rtcontrib()
251  
# Line 254 | Line 254 | sub ttree_out {
254          my $forw = shift;
255          my $side = ("Back","Front")[$forw];
256          my $cmd;
257 < # Only output one transmitted distribution, preferring backwards
258 < if ( !$forw || !$doback ) {
257 > # Only output one transmitted anisotropic distribution, preferring backwards
258 > if ( !$forw || !$doback || $tensortree==3 ) {
259   print
260   '       <WavelengthData>
261                  <LayerNumber>System</LayerNumber>
# Line 263 | Line 263 | print
263                  <SourceSpectrum>CIE Illuminant D65 1nm.ssp</SourceSpectrum>
264                  <DetectorSpectrum>ASTM E308 1931 Y.dsp</DetectorSpectrum>
265                  <WavelengthDataBlock>
266 <                        <WavelengthDataDirection>Transmission</WavelengthDataDirection>
267 <                        <AngleBasis>LBNL/Shirley-Chiu</AngleBasis>
266 > ';
267 > print "\t\t\t<WavelengthDataDirection>Transmission $side</WavelengthDataDirection>\n";
268 > print
269 > '                       <AngleBasis>LBNL/Shirley-Chiu</AngleBasis>
270                          <ScatteringDataType>BTDF</ScatteringDataType>
271                          <ScatteringData>
272   ';
# Line 379 | Line 381 | kbin2(pol,azi) = select(kfindrow(1, pol),
381   kbin = kbin2(Acos(abs(Dz)),Atan2(Dy,Dx));
382   ';
383   my $ndiv = 145;
384 < # Compute scattering data using rtcontrib
384 > # Compute scattering data using rcontrib
385   my @tfarr;
386   my @rfarr;
387   my @tbarr;
# Line 402 | Line 404 | $cmd = "cnt $ndiv $ny $nx | rcalc -of -e '$tcal' " .
404   system "$cmd" || die "Failure running: $cmd\n";
405   @tfarr = `$rccmd $td/$fmodnm.flt`;
406   die "Failure running: $rccmd $td/$fmodnm.flt\n" if ( $? );
407 + chomp(@tfarr);
408   @rfarr = `$rccmd $td/$bmodnm.flt`;
409   die "Failure running: $rccmd $td/$bmodnm.flt\n" if ( $? );
410 + chomp(@rfarr);
411   }
412   if ( $doback ) {
413   $cmd = "cnt $ndiv $ny $nx | rcalc -of -e '$tcal' " .

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines