Contenido principal

OPDFanChart

R2026b

Fan chart of tangential and sagittal OPD wavefront error

Since R2026b

Description

Add-On Required: This feature requires the Optical Design and Simulation Library for Image Processing Toolbox add-on.

An OPDFanChart object stores information used to display a fan chart of the tangential and sagittal optical path difference (OPD) wavefront error. You can change aspects of the display, such as the title, line color, legend, and grid, by modifying properties of the OPDFanChart object.

Creation

Create an OPDFanChart object by using the show function with an OPD object and the Style argument set to "fan".

Properties

expand all

OPD results, specified as an N-by-M array of OPD objects. N is the number of field points and M is the number of wavelengths for which OPD has been computed.

This property is read-only.

OPD fan data, in waves, represented as an N-by-M structure array. N is the number of field points and M is the number of wavelengths for which OPD has been computed. Each structure contains these fields:

  • PupilCoordinatesnumPointsPerAxis-by-1 vector representing normalized coordinates along the tangential or sagittal axis of the entrance pupil. numPointsPerAxis is the number of uniformly spaced sample points along the tangential or sagittal axis of a single pupil, used to compute each OPD fan.

  • Tangential — Tangential OPD fan values, in waves.

  • Sagittal — Sagittal OPD fan values, in waves.

Chart title, specified as a string scalar or character vector.

Data Types: char | string

Line color, specified as an RGB triplet, a hexadecimal color code, or a color name. You can also specify multiple colors as an M-by-3 numeric matrix where each row is an RGB triplet, or as an M-element string vector where each element is a hexadecimal color code or color name. If you specify a single color, the chart displays all results using the same color. If you specify multiple colors, then M must be equal to the number of wavelengths.

For a custom color, specify an RGB triplet or a hexadecimal color code.

  • An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1], for example, [0.4 0.6 0.7].

  • A hexadecimal color code is a string scalar or character vector that starts with a hash symbol (#) followed by three or six hexadecimal digits, which can range from 0 to F. The values are not case sensitive. Therefore, the color codes "#FF8800", "#ff8800", "#F80", and "#f80" are equivalent.

Alternatively, you can specify some common colors by name. This table lists the named color options, the equivalent RGB triplets, and the hexadecimal color codes.

Color NameShort NameRGB TripletHexadecimal Color CodeAppearance
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

Example: Color="r"

Example: Color="green"

Example: Color=[0 0.4470 0.7410]

Legend display, specified as "on" or "off", or as numeric or logical 1 (true) or 0 (false). A value of "on" is equivalent to true, and "off" is equivalent to false. The value is stored as an on/off logical value of type matlab.lang.OnOffSwitchState.

Grid lines to display, specified as one of these options.

  • "major" — The chart displays only major grid lines.

  • "minor" — The chart displays major and minor grid lines.

  • "off" — The chart does not display any grid lines.

Data Types: char | string

Parent UI container, specified as a Figure object, Panel object, GridLayout object, Tab object, or TiledChartLayout object. If you do not specify this property, MATLAB creates a new figure. You can create these UI containers using their respective creation functions.

Examples

collapse all

Import a double Gauss lens optical system from a ZMX file into the workspace.

opsys = zmximport("DoubleGaussLens.zmx");

Create a hexapolar sampling grid.

sg = samplingGrid("Hexapolar",30);

Trace rays through the optical system.

rb = traceRays(opsys,SamplingGrid=sg);

Compute the OPD using data from the ray bundle.

opdr = opd(opsys,rb);

Display the OPD results as a fan chart.

hfan = show(opdr,Legend="off");
title("Wavefront Error")

Figure contains an object of type optics.chart.opdfanchart. The chart of type optics.chart.opdfanchart has title Wavefront Error.

More About

expand all

Version History

Introduced in R2026b