In the sequential ray-tracing mode of ZEMAX, the order in which surfaces are entered matters enormously. The order specified in the Lens Data Editor (LDE) gives the exact order in which light interacts with the component surfaces of the optical system.

One surface is therefore placed a thickness (a distance along the local z-axis) away from the previous surface. This is known as a local coordinate system, because the location of a surface is specified in terms of the previous surface.

A Coordinate Break (CB) surface allows you to specify the location of the next surface as being shifted in x and y, and tilted (rotated) in x, y and z as well as simply shifted in z. The Coordinate Break is a dummy surface: that is, it has no refractive or reflective power and cannot bend rays. Its sole purpose is to define a new coordinate system in terms of the current one. Using such a surface allows you to separate the geometric location of a surface from its optical properties.   

In this article we will show how to tilt and decenter an optical component while leaving the position of all other components unchanged. After explaining precisely how to do this, we will show a tool that simplifies the whole process, but it is important you understand how the tool works, and so a careful reading of the whole article is advised. In the attached zip file, you will find a file, starting point.zip, which shows three glass windows, the central one of which is two optical materials glued together.

Eack of the windows has rectangular apertures applied (double-click on any surface and look at the Aperture tab to verify). Any ray that lands outside the aperture on a surface will be terminated.

The initial design. We are to tilt/decenter the central sandwich whilst leaving the other windows unmoved.

In the above screenshot, positive z is in the left-to-right direction, positive y is going up the page and positive x is going into the page. This is a right-handed coordinate system, in which z is on your index finger, y on your thumb and x on your middle finger, and your index finger is pointing from left to right, as shown by the coordinate axes in the bottom left-hand corner or the 3D Layout.

Our task in this article is to tilt and center the central window while leaving the other two windows in exactly their original locations. How will we know when we have achieved this? ZEMAX has a report which is vital whenever you are working on a tilted or decentered system.

Open Reports > Prescription Report, and look at the section headed Global Vertex:

The Global Vertex section of the Prescription Report

The Global Vertex report lists the position and orientation of the vertex of each surface with respect to the Global Coordinate Reference Surface (GCRS). In this design, surface 1 is the GCRS, but any surface may be selected either from the Type tab of the Surface Properties or from the Misc tab of the System Properties dialog boxes.

From the Global Vertex report it can be seen that all surfaces are on-axis with respect to the GCRS, as the rotation matrix is a unit matrix for all surfaces and the {x,y} coordinates of each surface is zero. Surface 7 (the front surface of window 3)  has {x, y, z} coordinates {0,0,33} with respect to surface 1, the GCRS.

The Coordinate Break (CB) surface allows you to specify a decentration in x, decentration in y, tilt in {x, y, z} as well as shift in z (thickness) that affects all subsequent surfaces. It also has an order flag, the purpose of which we will discuss later.

Our first task is to decenter the middle window, without disturbing the location of any other surfaces.