Expanding Zemax Capabilities with User Defined Objects

Published on by Anatoli Trafimuk.

To assist with the computation of the paths millions of rays of light, optical engineers use specialized software to  design and simulate optical systems. Zemax is the most popular optical design software and the one I prefer. It includes many built-in functions and  objects but sometimes more specific objects are required.  Zemax therefore allows the use of user written custom Dlls. These objects can be used for faster raytracing and optimization. 

As an illumination engineer I often need custom freeform object for complex illumination parts shapes. To help with this work I have written more that 20 custom Dlls for User Defined Objects, which enhance standard Zemax capabilities. Several examples of these are shown below:

Custom Dll based on Bezier curves for optimize and design freeform rectangle cross-section lightpipes:

Custom Dll based on Bezier curves for optimize and design freeform elliptical cross-section lightpipes:

Custom Dll based on Bezier curves and create TIR lens:

Custom Dll based on Bezier curves, whih are thin sheet, it is used for optimize and design reflectors:

Custom Dll based on Bezier curves, which create lens like freeform surfaces easily to optimize:

With these custom objects Dlls we have been able to design more efficient variants of optical parts than with standard Zemax objects.