ZEMAX Users' Knowledge Base - http://www.zemax.com/kb
How to Use the Modify Reference Objects Tool
http://www.zemax.com/kb/articles/162/1/How-to-Use-the-Modify-Reference-Objects-Tool/Page1.html
By Mark Nicholson
Published on 23 February 2007
 
This article explains how to use the Modify Reference Object Tool to tidy up multiple reference points and to define new pivot points in a non-sequential design

Introduction
Object placement in the non-sequential  component editor is very easy. Objects may be placed relative to the global coordinate system, or placed relative to any previously defined object. This makes it easy to place objects independently of each other, or to define sub-assemblies in which the objects inside the sub-assembly are positioned relative to some pivot point.

The object to which the coordinates are relative to is the "reference object". The default reference object is  object 0, which is the vertex of the Non-Sequential Component surface. If a positive number greater than zero is  specified, then the coordinates of the object are referenced to the location and rotation of the specified object.  This is an "absolute" reference object. If the reference object number is negative, then the reference object is  determined by adding the current object number to the negative reference object number. This is a "relative"  reference object. For example, if the reference object is -3 on object 8, the reference object will be 5 because 8 - 3 = 5. Relative reference objects are particularly useful when copying and pasting groups of objects; this is easiest if all the objects in the group use relative references to the first object in the group.

The 'Modify Reference Object' Tool makes it easy to change the reference object used by any specified object. To demonstrate its use, open the sample file 'Multiple Mirror Telescope.zmx'. This is found in the folder {ZEMAX root}\Samples\Non-sequential\Miscellaneous. It shows a four-channel telescope array, where each channel is relayed into a beam combiner such that a single image is formed:

The multiple mirror telescope

If you open the Non-Sequential Component Editor, you will see that there are 56 objects, and that many of these objects are Null Objects. The null objects represent the coordinate break surfaces that were used to position the surfaces in an initially sequential design. They are no longer necessary, and we will use the Modify Reference Objects tool to redefine the optical components relative to the global coordinate reference point of the non-sequential group.

Modify Reference Objects
In the Non-Sequential Component Editor, click on Tools...Modify Reference Object:

The tool location

The tool will open. Configure it as follows:

Configure the tool

and press OK. Although it appears that nothing happens (check the MTF and PSF windows: they give identical results) all the objects are now positioned relative to object 0. The null objects may now be deleted, so that only the 20 mirror objects are left.

Defining Pivot Points
Another really useful feature of the Modify Reference Objects tool is that it makes it easy to define a pivot point, and then to tilt an object or group of objects about this pivot point.

After deleting all the null objects, object 2 is the primary mirror for the first quadrant of the four-telescope array. It is drawn in red below:

Showimng the primary mirror of the first quadrant

Now this object is located at {x,y,z} coordinates of {0, 7.2, 13} and with tilt angles {qx,qy,qz} of {0,0,0} with respect to the global coordinate reference point. However, let us say that the mirror is held in a mount in which the pivot point (the location about which translations and tilts takes place) which is located as follows:

{x,y,z} = {3.5, 10, 16.7}
{qx,qy,qz} = {0, 10, 0}

We now want to make the mirror pivot about that point. To do this is easy. First, click on object 1, and press the {insert} key, so that a null object is inserted and becomes the new object 1. The primary mirror now becomes object 2. Enter the positions and tilts of the null object as above. Double-click on the object type of the null object, go to the Draw tab, and select 'Draw Local Axis'. The 3D layout will now show the pivot point:

Note the location of the pivot point

Then open the Modify Reference Tools dialog again (on the Non-Sequential Component Editor...Tools menu) and configure it as follows:

Redefine the mirror to be in relation to the pivot point

Note that the primary mirror position is unchanged, but that the values entered in the Non-Sequential Editor now show the position and tilt of the mirror relative to the pivot point. If the pivot point is shifted or tilted, the mirror will now shift or tilt about this new pivot point.

Summary
The Modify Reference Object tool makes it quick and easy to re-define an object's position and tilt with respect to any other object or group of objects.