resources:sol-pen-script
Solar Penetration Script
An ancient (~2003) script to automate the creation of a series of a pair of Radiance images: one fixed (e.g. from above with the roof clipped off) and one from the view direction of the sun. Adjust as required - probably best not to use as a style guide for shell scripting…
#!/bin/csh -f # Script to generate sequence of images -- scene must be centred on the origin. # # John Mardaljevic # School of Civil & Building Engineering # Loughborough University # Loughborough # Leicestershire # LE11 3TU, UK # # j.mardaljevic@lboro.ac.uk # # Set month and day and geographical coordinates # set oct = cen_x.oct set day = 01 set lat = 39.1 set lon = 86.3 set mer = 75.0 set coord = (-a $lat -o $lon -m $mer) set id = some-tag foreach mon (01 02 03 04 05 06) if($mon =~ 01) set month = January if($mon =~ 02) set month = February if($mon =~ 03) set month = March if($mon =~ 04) set month = April if($mon =~ 05) set month = May if($mon =~ 06) set month = June if($mon =~ 07) set month = July if($mon =~ 08) set month = August if($mon =~ 09) set month = September if($mon =~ 10) set month = October if($mon =~ 11) set month = November if($mon =~ 12) set month = December foreach hri (08 09 10 11 12 13 14 15 16 17 18 19 20) foreach mn (00 15 30 45) set hr = $hri":"$mn set hrh = $hri"h"$mn set skypar = ($mon $day $hr +i $coord -r 1.0e+06) set skyout = `gensky $skypar` echo "Sun altitude " $skyout[25] if (`expr $skyout[25] \<= 0`) goto BELOW_HORIZ set xv = $skyout[47] set yv = $skyout[48] set zv = $skyout[49] set vfac = 1000 set ang = 4 set vh = $ang set vv = $ang set xp = `rcalc -n -e '$1='"$xv"'*'"$vfac"` set yp = `rcalc -n -e '$1='"$yv"'*'"$vfac"` set zp = `rcalc -n -e '$1='"$zv"'*'"$vfac"` set xd = `rcalc -n -e '$1='"$xv"'*-1'` set yd = `rcalc -n -e '$1='"$yv"'*-1'` set zd = `rcalc -n -e '$1='"$zv"'*-1'` set dim = 600 gensky $skypar \ | oconv -w -i $oct - \ | rpict -w -vp $xp $yp $zp -vd $xd $yd $zd -vh $vh -vv $vv -x $dim -y $dim \ | pfilt -1 -e 0.06 -x /2 -y /2 \ | pcompos - 0 0 '\!psign -h 20 '"$month"' '"$day"' '"$hrh" 0 0 \ >! tmp1.hdr gensky $skypar \ | oconv -w -i $oct - \ | rpict -w -vf tclip.vf -av 0.0 0.5 0.0 -x $dim -y $dim \ | pfilt -1 -e 0.50 -x /2 -y /2 \ | pcompos - 300 0 tmp1.hdr 0 0 \ >! $id"_"$mon"_"$day"_"$hrh.hdr rm tmp1.hdr echo "Completed image ..." $id"_"$mon"_"$day"_"$hrh BELOW_HORIZ: end end end
resources/sol-pen-script.txt · Last modified: 2015/07/06 19:32 by cbdm