How to pivot any element about any point in space

The coordinate breaks in OpticStudio are extremely flexible. Coordinate breaks can be used to tilt or decenter any optical surface, or group of optical surfaces, about any pivot point, without disturbing the rest of the optical system. This article will utilize coordinate breaks to redefine the optical axis of your Sequential system. 

Authored By Erin Elliott

Downloads

Article Attachments

Introduction

Coordinate breaks are a very versatile tool that can be used to tilt or decenter one or more optical surfaces. it is extremely useful to be able to choose what point the optical surfaces will be tiled or decentered about, and we will show how to specify where that point is in this article. First, we will show how to tilt a lens about its front vertex without disturbing the rest of the optical system. We will also use global coordinates to check that the system remains undisturbed. Then we will move on to tilting a lens about its center, and finally demonstrate tilting a lens about an arbitrary point in space.

A three-lens system

To demonstrate this, we'll use a simple three-lens system. It consists of three convex-plano singlet lenses. The 3D Layout plot is shown in Figure 1. We’ll tilt the center lens, Lens 2. The points A and B are fixed points on the axis that mark the vertex locations of Lens 2 before it’s tilted or decentered.   

A Three Lens System

Figure 1: 3D Layout plot of a simple three-lens system.

The Lens Data editor is shown in Figure 2. The object is at infinity, and the system’s stop sits at the front of Lens 1. Lines 6 and 7 are the front and back of Lens 2. For convenience, we've placed the spaces between the lenses into separate lines (5, 8, and 11).

Lens Data Editor

Figure 2: The Lens Data Editor for the three-lens system.

Tilt about the front vertex

We can easily tilt Lens 2 about its front vertex by inserting a Coordinate Break surface before the “lens 2 front” surface as shown in Figure 3. The new line becomes Surface 6. That places a pivot point at A, so we’ve labeled the line “pivot point at A.”

Tilt About Front Axis

Figure 3: Inserting Surface 6 to create a pivot point at A.

In this case, we’ve applied the tile by setting Tilt About X: 5°. Figure 4 shows the modified Lens Data editor, showing the 5° tilt in Surface 6.

Tilt About X

Figure 4: Lens Data Editor showing 5° of tilt in Surface 6.

Figure 5 shows the resulting 3D Layout plot. Lens 2 is correctly tilted by 5° about its front vertex.

Resulting 3D Layout

Figure 5: The 3D Layout plot after adding a 5° tilt at point A.

Unfortunately, the rest of the system is tilted by 5 degrees, as well. That’s because we tilted the coordinate system in line 6, but we didn't untilt the coordinate system anywhere else to compensate.

Correct the coordinate system

To fix this problem and leave the rest of the system unperturbed by the tilt of Lens 2, we need to untilt the coordinate system. To keep the geometry correct, it’s important to return to the original pivot point at A before reversing the tilts. After reversing the tilts, we can proceed forward to the rest of the optical system.

To accomplish that, we need to insert new Surfaces 9 and 10 in the Lens Data Editor, as shown in Figure 6. Note that Surface 9 is a Coordinate Break.

Correct the Coordinate System

Figure 6: Surfaces 9 and 10 are used to reverse the tilts from Surface 6.

Line 9 returns us to the pivot point at A (Surface 6) and reverses the tilt applied there. We can do this using a Coordinate Return solve. A Coordinate Return is applied using Surface 9 Properties in the Lens Data Editor, as shown in Figure 7. Under Tilt/Decenter...Coordinate Return select Orientation, XYZ and set To Surface: 6.

Setting Up A Coordinate Return

Figure 7: Setting up a Coordinate Return.

OpticStudio automatically calculates and applies the tilts, decenters, and thickness needed to return to Surface 6 and applies the values to Surface 9. The Coordinate Return values are indicated with an “R” next to each value (See Figure 8).

Coordinate Return Values auto calculated

Figure 8: Coordinate Return values are automatically calculated and are indicated with an “R.”

The automatic Coordinate Return on Surface 9 will correctly “undo” any combination of tilt and decenter that is placed on Surface 6. The example we’ve shown uses only Tilt About X, but one can use any combination of Decenter X, Decenter Y, Tilt About X, Tilt About Y, and Tilt About Z. Surface 9 will automatically return to the correct coordinate system in all cases.

Now that we’re back at point A, line 10 just proceeds to point B using the thickness of the lens, as shown in Figure 6. In the 3D Layout plot shown in Figure 9, Lens 3 and the image plane are now in the correct locations, unperturbed by the tilt in Lens 2.

Untilting

Figure 9: The 3D Layout plot after “untilting” the coordinate system.

Checking the work

Layout plots can be used to check that you’ve gotten the coordinates approximately correct. But small mistakes in tilt and decenter won’t be easily visible in the layout plot. To check for small mistakes, it is best to look at the global coordinates of each element in the system.

The global coordinates can be accessed through Analysis...Report...Prescription Data, as shown in Figure 10.

Global Coordinate Data found under Analysis/Reports/Prescription Data

Figure 10: Global coordinate data can be found under Analysis...Reports...Prescription Data.

Under Settings, unchecked all the options except Global Vertex, as shown in Figure 11.

System/Prescription Data

Figure 11: The settings used to generate a list of global coordinate locations for each surface in the system.

The global vertex of each element will be listed in the output window as shown in Figure 12. We can examine the data to check that the 5-degree tilt on Lens 2 hasn’t changed the locations or tilts of the remaining surfaces.

In particular, we can see that Surfaces 10 through 15 don’t contain any tilt because the rotation matrices contain only 1s and 0s. We can also see that Lens 3 and the image plane have global Y coordinates of 0, indicating that those surfaces are correctly located on the system axis. Note that the numbers on the order of 10-16 are computational errors and can be treated as zeroes. Additionally, we can verify the Z-coordinates of each surface by comparing the values before and after adding tilts and decenters to Surface 6. The global coordinate check proves that Lens 2 has been correctly tilted by 5 degrees without disturbing the rest of the optical system.

Global Coordinates for each surface in system

Figure 12: Global coordinates for each surface in the system, used to check that the tilt on Lens 2 doesn’t affect the rest of the optical system.

Tilt a lens about its center

If we want to tilt a lens about an on-axis point at its center, we can use a method similar to the one above; we simply need to move the pivot point, pivot, return to the front of the lens. After the lens, return to the pivot point, undo the tilt and decenter, and proceed onward to the rest of the optical system.

A 3D Layout plot of the lens system is shown in Figure 13, in which Lens 2 is tilted by 5 degrees about the on-axis point at its center, half way between points A and B.

3D layout plot showing Lens 2 tilted about the on-axis point at center of lens

Figure 13: A 3D Layout plot showing Lens 2 tilted about the on-axis point at the center of the lens. 

The Lens Data Editor for this situation is shown in Figure 14. Lines 6, 7, 10, and 11 are used. Note that lines 7 and 10 are Coordinate Breaks. Lines 6 and 11 carry only thickness values. Note that Lens 2 has a total thickness of 3 mm, as shown by the Thickness parameter for Surface 8.

System Configuration in the Lens Data Editor, when tilting a lens about the on-axis point at its center

Figure 14: The system configuration in the Lens Data Editor, when tilting a lens about the on-axis point at its center. 

Here’s a breakdown of what’s happening:

  • After line 5, we’re at point A (see Figure 13).
  • Line 6 carries a thickness of 1.5 mm, which is ½ the lens thickness. This moves us forward along the axis to the center of the lens, where we want the pivot point to be located.
  • Line 7 carries out the tilt and decenters. We’ve used a 5° tilt about X (see Figure 15).
  • After the tilt and decenters are applied in Line 7, the thickness of -1.5 mm is applied. This moves us back from the pivot point to the front of the lens (which is true even if the lens is now tilted and decentered).
  • Lines 8 and 9 build the lens in the new tilted/decentered coordinate system. After Line 9, we’re at the back of the lens.
  • Line 10 uses a Coordinate Return to return to Surface 7. That returns us to the pivot point at the center of the lens, and “undoes” the tilts and decenters.
  • Line 11 moves us forward by 1.5 mm along the axis, half the lens thickness, to reach point B. We can then proceed with the rest of the optical system.

Tilts and Decenters applied in Lines 7 and 10 to properly tilt Lens

Figure 15: The tilts and decenters applied in Lines 7 and 10, to properly tilt Lens 2 by 5 degrees without disturbing the rest of the optical system.

Tilt a lens about any point in space

The cases above are common, specific cases. But Coordinate Breaks can also be used to set up a generic pivot about any point in space. For example, suppose that we want to tilt the lens about the X-axis again, by 7 degrees. But this time, we want to tilt about a point that’s 20 mm above the lens, as shown in Figure 16.

Pivot Lens 2 about a point 20mm above the lens center

Figure 16: Pivot Lens 2 about a point 20 mm above the lens center.

The Lens Data Editor for this situation is shown in Figures 17 and 18. Here we've used three lines before the lens and three lines after the lens to create a fully generic pivot. Although the system looks complex, most of the values fill in automatically, and we only need to create the setup once. We can then copy these lines to any optical element and use them to place a pivot point anywhere in space.

The three lines before the lens are used to go to the pivot point, carry out the pivot, and return. The three lines after the lens do the same in order to undo the pivot. With this setup, any combination of tilts or decenters can be applied to Lens 2 by entering the values in Line 7. Any pivot point can be chosen by entering the values into Line 6.

Lens Data Editor showing a fully generic pivot for lens 2

Figure 17: The Lens Data Editor showing a fully generic pivot for Lens 2.

We can also think of what’s happening in the Lens Data Editor in terms of pairs of lines. Lines 6 and 8 take us to and from the pivot point. Lines 11 and 13 do the same, after the lens. Lines 7 and 12 are the pair of lines that carries out the tilts and decenters on Lens 2, and then reverses them after the lens.

Lens Data Editor showing tilts and decenters used to tilt lens 2 by 7 degrees

Figure 18: The Lens Data Editor showing the tilts and decenters used to tilt Lens 2 by 7° about a point 20 mm above the lens.

Here’s a line-by-line breakdown of the setup:

  • After line 5, we’re at point A on the optical system’s axis (see Figure 16).
  • Line 6 applies the thickness, tilt, and/or decenters needed to get from A to the pivot point. In this example, we’ve moved 1.5 mm along the axis to the lens center, and then +20 mm along the Y axis to reach the pivot point.
  • Line 7 applies the decenters and tilts to the lens element. In this example, we’ve entered a 7 degree value in Tilt About X.
  • Line 8 reverses the motions used to get to the pivot point. This takes us back to the front of the lens. The values in this line are calculated automatically using pickups. All the pickups are set to Line 6 with a scale factor of -1. Note also that the “Order” flag is set to 1.
  • Lines 9 and 10 define Lens 2.
  • Line 11 returns us to the pivot point. The values in this line are calculated automatically by setting up a Coordinate Return to Line 7 (see Figure 7 on setting up Coordinate Returns).
  • Line 12 reverses the tilts and decenters on Lens 2. The values are calculated automatically using pickups. All pickups are set to Line 7 with a scale factor of -1. Note that the “Order” flag is set to 1.
  • Line 13 returns from the pivot point to point A. The values are calculated automatically using a Coordinate Return to Line 6.

The same technique can be used on any optical element, to decenter and tilt the element with respect to any coordinate system.

As a final note, once the off-axis pivot point has been set up, we can hide those lines. This simplifies the Lens Data Editor for situations when we don’t want to change the pivot point location often. Figure 19 shows the simplified Lens Data Editor. The “Hide Row” option appears when right-clicking on the Line number.

Simplifying the Lens Data Editor by hiding the lines used to define the off-axis pivot point

Figure 19: Hiding a row from the Lens Data Editor. 

KA-01344

Was this article helpful?
1 out of 1 found this helpful

Comments

0 comments

Article is closed for comments.