Since rtrace is looking for ray origins and directions on its standard input, you cannot send it an octree through a pipe. However, you can run it like so:
rtrace -ov "\!oconv -i static.oct lights1.rad" < samples.inp > radiance.out
The backslash before the '!' may not be necessary if your shell does not treat this character specially. Basically, you give your command to create the octree in place of an octree file. (This also works for rpict, rvu, and rcontrib.)
From: "Sarith Subramaniam" <firstname.lastname@example.org>
Subject: [Radiance-general] Can rtrace be run by directing octree through stdin ?
Date: May 31, 2015 2:25:51 AM GMT+02:00
I have around 18 luminaire rad files and I want to run rtrace on all of them with the same set of ray inputs( which are in a text file). Since the room geometry will remain the same in each case, my octree will comprise of : room materials, room geometry and luminaire(18 of them, one at a time). So, I want to implement a loop where I can call oconv each time and pipe the output directly to rtrace without writing the octree to disk.
An example in the man page is : rtrace −ov scene.oct < samples.inp > radiance.out
Is it possible to do something like : rtrace samples.inp <scene.oct>radiance.out. ? If yes, is there a specific flag that I should be using for the ray file(samples.inp) ?
I have been able to make this work with rpict for images with something like : oconv radfiles | rpict –vf viewfile –ab etc.. | pfilt | ra_ bmp etc, however I couldn’t find a way to create a similar pipe with rtrace.