--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/orig/glare.csh Sat Apr 09 17:55:16 2011 +0100
@@ -0,0 +1,219 @@
+#!/bin/csh -f
+# RCSid: $Id: glare.csh,v 2.4 2003/02/22 02:07:30 greg Exp $
+#
+# Interactive program for calculating glare values
+#
+set fgargs=(-v)
+set nofile="none"
+set octree=$nofile
+set picture=$nofile
+set glarefile=$nofile
+if ($#argv >= 1) then
+ set glarefile=$argv[1]
+ if ($#argv >= 2) then
+ set picture=$argv[2]
+ if ($#argv >= 3) then
+ set octree=$argv[3]
+ endif
+ endif
+endif
+set rtargs=
+set view=
+set threshold=300
+set maxangle=0
+set stepangle=10
+
+set gndxfile="glr$$.ndx"
+set plotfile="glr$$.plt"
+set tempfiles=($gndxfile $plotfile)
+
+alias readvar 'echo -n Enter \!:1 "[$\!:1]: ";set ans="$<";if("$ans" != "")set \!:1="$ans"'
+
+onintr quit
+
+cat <<_EOF_
+This script provides a convenient interface to the glare calculation
+and analysis programs. It works on a single output file from findglare,
+which you must either create here or have created already before.
+_EOF_
+while ( $glarefile == $nofile )
+ echo ""
+ echo "Please specify a glare file, or use ^C to exit."
+ readvar glarefile
+end
+if ( ! -f $glarefile ) then
+ echo ""
+ echo -n "The glare file '$glarefile' doesn't exist -- shall we create it? "
+ if ("$<" =~ [nN]*) exit 0
+ cat <<_EOF_
+
+A glare file can be created from a wide-angle Radiance picture (preferably
+a fisheye view), an octree, or both. Computing glare source locations
+from a finished image is faster, but using an octree is more reliable
+since all of the scene information is there. Whenever it is possible,
+you should use both a picture and an octree to compute the glare file.
+
+You must also have a viewpoint and direction for the glare calculation.
+If the viewpoint is not the same as the picture, an error will result.
+If no view is specified, the view parameters are taken from the picture,
+so the view specification is optional unless you are starting from an
+octree.
+
+_EOF_
+ if ( $picture == $nofile ) then
+ readvar picture
+ endif
+ if ( $octree == $nofile ) then
+ readvar octree
+ endif
+ readvar view
+ if ( $picture == $nofile && $octree == $nofile ) then
+ echo "You must specify a picture or an octree"
+ exit 1
+ endif
+ if ( $picture == $nofile && "$view" == "" ) then
+ echo "You must give a view if there is no picture"
+ exit 1
+ endif
+ if ( $picture != $nofile ) then
+ if ( ! -r $picture ) then
+ echo "Cannot read $picture"
+ exit 1
+ endif
+ set fgargs=($fgargs -p $picture)
+ if ( "$view" != "" ) then
+ set view=(-vf $picture $view)
+ endif
+ endif
+ set fgargs=($fgargs $view)
+ if ( $octree != $nofile ) then
+ if ( ! -r $octree ) then
+ echo "Cannot read $octree"
+ exit 1
+ endif
+ cat <<_EOF_
+
+With an octree, you should give the same options for -av, -ab and
+so forth as are used to render the scene. Please enter them below.
+
+_EOF_
+ if ($picture != $nofile) then
+ echo "These are the parameters from the picture:"
+ getinfo $picture
+ endif
+ readvar rtargs
+ set fgargs=($fgargs $rtargs $octree)
+ endif
+ echo ""
+ echo -n "Do you expect glare sources in the scene to be small? "
+ if ("$<" =~ [yY]) then
+ echo -n "Very small? "
+ if ("$<" =~ [yY]) then
+ set fgargs=(-r 400 $fgargs)
+ else
+ set fgargs=(-r 250 $fgargs)
+ endif
+ echo -n "Are these sources relatively bright? "
+ if ("$<" =~ [nN]*) then
+ set fgargs=(-c $fgargs)
+ endif
+ endif
+ cat <<_EOF_
+
+Glare sources are determined by a threshold level. Any part of the
+view that is above this threshold is considered to be part of a glare
+source. If you do not choose a threshold value, it will be set auto-
+matically to 7 times the average field luminance (in candelas/sq.meter).
+
+_EOF_
+ echo -n "Do you wish to set the glare threshold manually? "
+ if ("$<" =~ [yY]) then
+ readvar threshold
+ set fgargs=(-t $threshold $fgargs)
+ endif
+ cat <<_EOF_
+
+It is often desirable to know how glare changes as a function of
+viewing direction. If you like, you can compute glare for up
+to 180 degrees to the left and right of the view center. Enter
+the maximum angle that you would like to compute below.
+
+_EOF_
+ readvar maxangle
+ if ( $maxangle >= $stepangle ) then
+ set fgargs=(-ga $stepangle-$maxangle\:$stepangle $fgargs)
+ endif
+ echo ""
+ echo "Starting calculation..."
+ echo findglare $fgargs
+ findglare $fgargs > $glarefile
+ if ($status) then
+ echo "Uh-oh. Something went wrong with findglare\!"
+ rm $glarefile
+ exit 1
+ endif
+endif
+if ($?DISPLAY && $picture != $nofile) then
+ echo ""
+ echo "Displaying glare sources in '$picture'..."
+ xglaresrc $picture $glarefile
+endif
+set ndxnam=("Guth Visual Comfort Probability" "Guth Disability Glare Ratio" "CIE Glare Index" "BRS Glare Index" "Unified Glare Rating" "Daylight Glare Index")
+set ndxcom=("glarendx -t guth_vcp" "glarendx -t guth_dgr" "glarendx -t cie_cgi" "glarendx -t brs_gi" "glarendx -t ugr" "glarendx -t dgi")
+set bcdlvl=(50 124 18.5 18.5 18.5 21.7)
+while ( 1 )
+ echo ""
+ echo " 0. Quit"
+ set i=1
+ while ($i <= $#ndxnam)
+ echo " $i. $ndxnam[$i]"
+ @ i++
+ end
+ echo ""
+ set choice=0
+ readvar choice
+ if ($choice < 1 || $choice > $#ndxcom) goto quit
+ $ndxcom[$choice] $glarefile > $gndxfile
+ echo ""
+ echo $ndxnam[$choice]
+ echo "Angle Value"
+ getinfo - < $gndxfile
+ echo ""
+ set save_file=$nofile
+ readvar save_file
+ if ($save_file != $nofile) then
+ cp -i $gndxfile $save_file
+ endif
+ if ( `getinfo - < $gndxfile | wc -l` > 4 ) then
+ echo ""
+ echo -n "Do you want to plot this data? "
+ if ( "$<" =~ [yY]* ) then
+ set subtitle="$view"
+ if ($picture != $nofile) then
+ set subtitle="$picture $subtitle"
+ else if ($octree != $nofile) then
+ set subtitle="$subtitle $octree"
+ endif
+ if ( "$subtitle" == "" ) then
+ set subtitle="`getinfo < $glarefile | grep findglare`"
+ endif
+ cat <<_EOF_ > $plotfile
+include=line.plt
+include=polar.plt
+title="$ndxnam[$choice]"
+subtitle="$subtitle"
+Bdata=
+ 0 $bcdlvl[$choice]
+ 360 $bcdlvl[$choice]
+;
+Blabel="BCD level"
+Adata=
+_EOF_
+ getinfo - < $gndxfile >> $plotfile
+ igraph $plotfile
+ endif
+ endif
+end
+quit:
+rm -f $tempfiles
+exit 0