Hi there again friends from the Zemax community,
I want to use the ZOS-API interface to run a non sequential ray tracing analysis. I have managed to run a batch ray tracing analysis using OpenBatchRayTrace() and CreateNormUnpol(), however, as far as I understand it, these two tools work just for a sequential system.
I found that for the non-sequential case, I would need to use a different approach. I found the following guide on how to run the non-sequential case:
However, it seems that in this case I would need to first execute the non-sequential ray-tracing, save the results into a file and then extract the data associated to the rays with a ZRDReader object.
Having said this, I have a few questions:
-From the data available to the ZRDReader I notice that there is no information on the surface normals as in the sequential sequential batch ray tracing case. Is it possible to obtain the surface normals in this case? Or should I try to determine these directly from the incident and transmitted ray directions? (l m n direction cosines)
-Is there any other way to perform the non-sequential “batch” tracing by setting the rays directions and origin “in-place” as is done in the sequential ray-tracing situation? Also, I would prefer if I dont have to save the ray data information to a file, how can I extract all ray information directly on the same function call?
In advance, thanks for the comments!