In either case, users need to place thin-film coatings and scattering functions on the surfaces of these objects to obtain the highest accuracy when simulating the propagation of light through them. ZEMAX uses the concept of a "face" to describe a region on the surface of an object to which a thin-film coating or scattering function is applied.
In parametric objects, the definition of a face is usually easy. For example, a standard lens is easily understood as having a front polished face, a rear polished face, and a rough, unpolished cylinder connecting the two polished faces.
When defining an object by a data file, defining a "face" may be more complex. Even a simple faceted mirror may be made up of many facets, which the human observer can clearly see make up a face, even though the mathematical description of that face may be very complex. When complex CAD objects are involved, we may be dealing with many megabytes of data, involving flat, curved, spline etc segments.
This article describes how faces are defined in general objects to help place coating and scattering functions on that object.
![]() | ![]() |

If you choose "object default" then the reflectivity of the face is defined by the refractive material of the glass entered in the Non-Sequential Component Editor, the refractive material on the other side of the face, any thin-film coating on the face (described later), and the wavelength, polarization and incident angle of the ray that hits the face. Scattering functions can also be applied.
If you choose "Reflective", the face behaves as if the optical material was "MIRROR". Rays approaching the face from either side are reflected. Coating and scattering functions can be applied as normal.
If you choose "Absorbing" then any ray incident on the face is terminated. No coating or scattering function can be applied.
In the rest of this article, it is assumed that "Object Default" is selected.
Once a face is selected, any coating from the currently loaded coating file can be applied to that face using the "coating" drop-down box. ZEMAX incorporates a complete polarization ray tracing and analysis capability. Any input polarization state may be defined. ZEMAX accounts for transmission, reflection, absorption, polarization state, diattenuation, and retardance.
Coatings may be composed of arbitrary layers of arbitrary material, each defined with a complex index of refraction, with full dispersion modeling in the coating materials. Substrates may be glass, metallic, or user defined. Full details are given in the manual, chapter "Polarization Analysis", subsection "Defining Coatings in ZEMAX". ZEMAX can also import coating definitions directly from The Essential Macleod, Film Star and other thin-film coating design packages. ZEMAX automatically reverses the coating layer order if faces go from air to glass then glass to air, so the same coating may be applied on many faces without the need to define “mirror image” coatings.
If the original coating prescription is not available, a TABLE coating of performance data versus wavelength and angle may be used, or an IDEAL coating which simply gives reflection and transmission for all rays at all angles and wavelengths may be used.
With the coating data in place, ZEMAX computes the diattenuation, phase, retardance, reflection, transmission, or absorption of any coating as a function of input polarization, wavelength and angle.
Next, a surface scattering function can be applied. The scattering functions available include Lambertian, Gaussian, ABG, and user-defined.
For example, the front face of the lens is likely to be well polished, and may have a quarter-wave MgF2 coating on it. This coating is called "AR" in the default coating catalog which ships with ZEMAX. To place this coating on Face 1, the front face:

Face 0, which is the side face, is likely to be unpolished and uncoated, and so could be entered like so:


This object contains 178 separate CAD surfaces, which are the elemental units the CAD program uses to describe the object. Worse, they are not listed in any sequential order, so knowing where CAD surface 45 is gives no clue as to the location of CAD surface 46, for example.
Now this object comprises two lenses. One is used to provide the flash illumination of the object scene, and the other images the object scene onto the system's detector. Each path was designed separately as a sequential design in ZEMAX: the lenses were then exported to a CAD program, combined and the associated mounting hardware added. The final CAD object was re-exported back into ZEMAX for an opto-mechanical assessment of efficiency, image quality and stray light.
The object is produced by injection moulding. Only two surface finishes are used. The lens surfaces are smooth, polished and have a cold coating applied to them. All other surfaces are produced by spark-eroding the molding tool so that a rough, scattering finish is produced.
Clearly nobody wants to edit 178 CAD surfaces by hand! Also, other CAD objects can be significantly larger. For this reason, ZEMAX gives you useful options for how to allocate ZEMAX faces to CAD surfaces. This is controlled by the "Face Mode" property of the Imported object. It has these values:
In this case, I have chosen to import the object using Face Mode 2, so that all surfaces are uniquely identified. There are 178 CAD surfaces. However, I only want to use two surface finishes to define the coating/scattering properties: one is well-polished, low scatter, anti-reflection coated, the other is uncoated and highly scattering. To do this, double-click on the object and go to the Faces tab of the Object Properties:

Note that each CAD surface is allocated a unique face number, up to face 50. Before launching the object viewer, we select Viewer Highlights: By Surface and then press View Object. The Object Viewer opens:


I then press the Change to -> button to change all CAD surfaces to be associated with Face 0:

And last I press Clear All so that no surfaces are highlighted. So now, all surfaces of the object have the same face number. But, I want the polished lens faces to have a different face number: face 1 for example. In the object viewer, I just click with the mouse on the object to highlight the selected faces. By clicking and spinning with the mouse, I can easily select all the faces that comprise the smooth, polished, lens areas of the object:

Clicking with the mouse on the object viewer, and using mouse spinning, is much easier than selecting the surfaces in the drop-down list on the Object Properties Face tab! Note that the CAD surfaces selected with the mouse are also highlighted in the drop-down list for convenience. Once I have highlighted all the CAD surfaces I want with the mouse, I select "Face 1" in the drop-down list of faces, and press Change To -> again to make these surfaces all Face 1. My object now consists of just two faces, to which I can add coating and scattering functions as before:

In summary: