Provided by: radiance_4R1+20120125-1.1_amd64 bug

NAME

       pcomb - combine RADIANCE pictures

SYNOPSIS

       pcomb [ -h ][ -w ][ -x xres ][ -y yres ][ -f file ][ -e expr ] [ [ -o ][ -s factor ][ -c r
       g b ] input ..  ]

DESCRIPTION

       Pcomb combines equal-sized RADIANCE pictures and sends the result to the standard  output.
       By default, the result is just a linear combination of the input pictures multiplied by -s
       and -c coefficients, but an arbitrary mapping can be assigned with the -e and -f  options.
       Negative  coefficients  and  functions are allowed, and pcomb will produce color values of
       zero where they would be negative.

       The variables ro, go and bo specify the red, green and blue output  values,  respectively.
       Alternatively,  the single variable lo can be used to specify a brightness value for black
       and white output.  The predefined functions ri(n), gi(n) and bi(n) give the red, green and
       blue  input values for picture n.  To access a pixel that is nearby the current one, these
       functions also accept optional x and y offsets.  For example, ri(3,-2,1) would return  the
       red  component  of  the  pixel  from  picture  3  that is left 2 and up 1 from the current
       position.  Although x offsets may be as large as width  of  the  picture,  y  offsets  are
       limited  to  a small window (+/- 32 pixels) due to efficiency considerations.  However, it
       is not usually necessary to worry about this problem -- if the  requested  offset  is  not
       available, the next best pixel is returned instead.

       For  additional  convenience,  the  function  li(n) is defined as the input brightness for
       picture n.  This function also accepts x and y offsets.

       The constant nfiles gives the number of input  files  present,  and  WE  gives  the  white
       efficacy (lumens/brightness) for pixel values, which may be used with the -o option or the
       le(n) values to convert to absolute photometric units (see below).  The variables x and  y
       give  the  current  output  pixel  location  for use in spatially dependent functions, the
       constants xmax and ymax give the input resolution, and the constants xres  and  yres  give
       the  output  resolution  (usually the same, but see below).  The constant functions re(n),
       ge(n), be(n), and le(n) give the exposure values  for  picture  n,  and  pa(n)  gives  the
       corresponding  pixel aspect ratio.  Finally, for pictures with stored view parameters, the
       functions Ox(n), Oy(n) and Oz(n) return the  ray  origin  in  world  coordinates  for  the
       current  pixel  in  picture  n,  and  Dx(n),  Dy(n)  and  Dz(n)  return the normalized ray
       direction.  In addition, the function T(n) returns the distance from the origin to the aft
       clipping plane (or zero if there is no aft plane), and the function S(n) returns the solid
       angle of the current pixel in steradians (always zero for parallel views).  If the current
       pixel  is outside the view region, T(n) will return a negative value, and S(n) will return
       zero.

       The -h option may  be  used  to  reduce  the  information  header  size,  which  can  grow
       disproportionately  after  multiple runs of pcomb and/or pcompos(1).  The -w option can be
       used to suppress warning messages about invalid calculations.   The  -o  option  indicates
       that  original  pixel  values  are  to  be used for the next picture, undoing any previous
       exposure changes or color correction.

       The -x and -y options can be used to specify the desired output resolution, xres and yres,
       and  can  be  expressions  involving other constants such as xmax and ymax.  The constants
       xres and yres may also  be  specified  in  a  file  or  expression.   The  default  output
       resolution is the same as the input resolution.

       The -x and -y options must be present if there are no input files, when the definitions of
       ro, go and bo will be used to compute each output pixel.  This  is  useful  for  producing
       simple  test  pictures  for  various purposes.  (Theoretically, one could write a complete
       renderer using just the functional language...)

       The standard input can be specified with a  hyphen  ('-').   A  command  that  produces  a
       RADIANCE  picture  can  be  given  in place of a file by preceeding it with an exclamation
       point ('!').

EXAMPLES

       To produce a picture showing the difference between pic1 and pic2:

         pcomb -e 'ro=ri(1)-ri(2);go=gi(1)-gi(2);bo=bi(1)-bi(2)' pic1 pic2 > diff

       Or, more efficiently:

         pcomb pic1 -s -1 pic2 > diff

       To precompute the gamma correction for a picture:

         pcomb -e 'ro=ri(1)^.4;go=gi(1)^.4;bo=bi(1)^.4' inp.hdr > gam.hdr

       To perform some special filtering:

         pcomb -f myfilt.cal -x xmax/2 -y ymax/2 input.hdr > filtered.hdr

       To make a picture of a dot:

         pcomb -x 100 -y 100 -e 'ro=b;go=b;bo=b;b=if((x-50)^2+(y-50)^2-25^2,0,1)' > dot

AUTHOR

       Greg Ward

SEE ALSO

       getinfo(1), icalc(1), pcompos(1), pfilt(1), rpict(1)