ZEMAX capabilities with user-defined objects and how these objects can be realized were reviewed.  The described method works faster than with an imported object.  The objects listed in the article are based on surfaces of revolution, but programming-savvy users can describe their own object and optimize it with ZEMAX.

References
1. ZEMAX User’s Guide.
2. G.A. Korn, T.M. Korn. Mathematical handbook for scientists and engineers, McGraw-Hill, 1968.
3. P. Shirley, R. K. Morley. Realistic Ray Tracing 2nd ed., A K Peters, 2003.
4. L.Piegl, W.Tiller. The NURBS book, Springer, 1996.
5. William H. Press et all., Numerical Recipes. The Art of Scientific Computing 3rd ed., Cambridge University Press, 2007.