[Radiance-general] Rendering exclude options

Greg Ward gward at lmi.net
Tue Oct 26 17:43:40 CEST 2004


Hi Nick,

You should be able to do what you want using pinterp and falsecolor.  
I'll assume that you desire isolux contours on vertical surfaces in my 
instructions, below.

1) Generate an irradiance image using a parallel view to render the 
vertical surfaces you are interested in with the -i option.  This will 
exclude surfaces perpendicular (horizontal surfaces in particular), but 
may include surfaces at odd angles.  Hopefully, this is OK.  At the 
same time, you should use the -z option of rpict to create a z-buffer 
to go with your rendering, and set -pj 0.  Let's call this 
"irradiance.pic", and call the z-buffer "irradiance.zbf".

2) Generate a standard image of the same size but without the -i or -z 
options.  (Actually, you may use the -z option with either rendering -- 
you just don't need it for both as it will be the same.)  Again, set 
-pj 0 as before, so your pixels line up.  Let's call this 
"standard.pic".  You will probably want to pass this image through 
pcomb or pfilt to optimize the exposure for display, but don't alter 
the resolution or the z-buffer won't be valid.

3) Run these two renderings through falsecolor to generate a contour 
plot, using Rob Guglielmetti's new -lw option to set the label width to 
0.  You must do this in a special way to preserve the view string 
needed in Step 5:

	% getinfo < standard.pic | grep '^VIEW=' > contour.pic
	% falsecolor -cl -lw 0 -i irradiance.pic -p standard.pic [other 
options] >> contour.pic

4) Generate a standard image from the view you actually want to see, 
which I'll assume is either a perspective view or one coming from a 
different angle to include some vertical surfaces.  You must also 
generate a z-buffer for this image using rpict's -z option.  Let's call 
this "view.pic", and the z-buffer "view.zbf".  You will probably want 
to pass this image through pcomb or pfilt to optimize the exposure for 
display, but follow the same procedure as in Step 2.

5) Use pinterp to combine the two images, giving the contour image 
first and using the -q option to avoid averaging:

	% pinterp -x 1024 -y 1024 -q -f0 -vf view.pic contour.pic 
irradiance.zbf view.pic view.zbf > combined.pic

The -x 1024 -y 1024 options are to set the output resolution, which 
should match the resolutions of the input images.  If you want to 
produce an anti-aliased result, then go through with resolutions that 
are twice or three times what you desire in the end, then pass 
"combined.pic" through pfilt with options to filter down the result.  
Any filtering earlier in the pipeline will break everything.

I hope this works -- let me know how it turns out.  (And you thought it 
was a simple question!)

-Greg

> From: "Nick Devlin" <nickd at xco2.com>
> Date: October 26, 2004 1:41:14 AM PDT
>
Dear All,

A simple question – I suspect to the more able (then me) of you out 
there…. Is it possible to exclude planes in a certain orientations from 
an rpict calculation. For example, I would like to use radiance to 
create a picture showing the vertical sky component on vertical 
surfaces. Therefore I would like to exclude the horizontal surfaces to 
prevent them from cluttering up the image.

Ideally, I would anticipate being able to overlay a contour image which 
excludes the horizontal surfaces over a luminance image which includes 
them. I suppose I could generate this from two separate sets of 
geometry, but this is a little clunky and may result in some inaccurate 
results, where the inter-reflections may be important and or 
significant. Any thoughts would be gratefully received.

Many thanks

Nick

  XCO2 conisbee  Ltd
1-5  Offord Street
London N1 1DH
Tel: + 44 (0)20 7700 1000
Fax: + 44 (0)20 7700 4455
Email: nickd at xco2.com
Web: http://www.xco2.com

  engineering sustainability




More information about the Radiance-general mailing list