Skip to main content

ZOS-API interface 2024 R1

ZOSAPI.IOpticalSystem Interface Reference

Last update: 17.07.2025

Represent a complete optical system. A IOpticalSystem corresponds to a single .ZMX file. See IZOSAPI_Application for information on how to get or create a IOpticalSystem. More...

Public Member Functions

string GetCurrentStatus ()
 Gets the last status of the optical system. If null or the length is 0, then the system has no errors.
 
string UpdateStatus ()
 Forces the an update of the system, and returns the current status.
 
bool MakeSequential ()
 Sets the current system to sequential mode if it is not already.
 
bool MakeNonSequential ()
 Makes the system non-sequential if it is not already. Note that any sequential data will be lost.
 
bool LoadFile (string LensFile, bool saveIfNeeded)
 Replaces the current system with data from the specified file.
 
void New (bool saveIfNeeded)
 Clears all data in the current system and resets it to a default state.
 
void Save ()
 Saves the current system.
 
void SaveAs (string fileName)
 Saves the current system to the specified file. All future calls to Save will use the same file.
 
bool Close (bool saveIfNeeded)
 Closes the current system, saving if specified. Note that the IZOSAPI_Application.PrimarySystem cannot be closed.
 
IOpticalSystem CopySystem ()
 Creates a copy of this entire system, except for any related analysis windows.
 
void UpdateFileLists ()
 
bool ConvertToProjectDirectory (string folderPath)
 
bool TurnOffProjectDirectory ()
 
IMetadata GetMetadata ()
 

Properties

string SystemName [get, set]
 Gets or sets the name of the current system.
 
int SystemID [get]
 Gets a unique identifier for the current system; this can be used to differentiate between multiple IOpticalSystem instances, and to identify the relevant system in a OpticalSystemStatusChangedHandler event.
 
SystemType Mode [get]
 Gets the current sequential/non-sequential status.
 
string SystemFile [get]
 Gets the full path and file name for the current system.
 
bool IsNonAxial [get]
 Gets a value indicating whether the current system is an axial, sequential system.
 
bool NeedsSave [get]
 
ISystemData SystemData [get]
 Data for configuring everything in the System Explorer.
 
ILensDataEditor LDE [get]
 Gets the lens data editor.
 
INonSeqEditor NCE [get]
 Gets the non-sequential component editor.
 
IToleranceDataEditor TDE [get]
 Gets the tolerance data editor.
 
IMeritFunctionEditor MFE [get]
 Gets the merit function editor.
 
IMultiConfigEditor MCE [get]
 Gets the multi-configuration editor.
 
I_Analyses Analyses [get]
 Gets the analyses for the current system.
 
IOpticalSystemTools Tools [get]
 Gets an interface used to run various tools on the optical system.
 
IZOSAPI_Application TheApplication [get]
 Gets the IZOSAPI_Application that owns this system.
 
LensUpdateMode UpdateMode [get, set]
 Gets or sets the update mode used by the API when the system is modified. Note that this is different than the update mode saved with the current ZMX file. The default value is LensUpdateMode.EditorsOnly.
 
SessionModes SessionMode [get, set]
 
ISTARSubsystem STARSubsystem [get]
 Gets the ISTARSubsystem to control/access some STAR settings and system-level data.
 
bool IsProjectDirectory [get]
 

Detailed Description

Member Function Documentation

◆ Close()

bool ZOSAPI.IOpticalSystem.Close ( bool  saveIfNeeded)

Closes the current system, saving if specified. Note that the IZOSAPI_Application.PrimarySystem cannot be closed.

Parameters
saveIfNeededif set to true the system will before closing (if NeedsSave is true).
Returns
true if the system was closed; otherwise, false.

◆ ConvertToProjectDirectory()

bool ZOSAPI.IOpticalSystem.ConvertToProjectDirectory ( string  folderPath)

◆ CopySystem()

IOpticalSystem ZOSAPI.IOpticalSystem.CopySystem ( )

Creates a copy of this entire system, except for any related analysis windows.

Returns
A new copy of this system.

◆ GetCurrentStatus()

string ZOSAPI.IOpticalSystem.GetCurrentStatus ( )

Gets the last status of the optical system. If null or the length is 0, then the system has no errors.

Returns

◆ GetMetadata()

IMetadata ZOSAPI.IOpticalSystem.GetMetadata ( )

◆ LoadFile()

bool ZOSAPI.IOpticalSystem.LoadFile ( string  LensFile,
bool  saveIfNeeded 
)

Replaces the current system with data from the specified file.

Usage (see Example 14 for a full sample)

C#

// Open Double Gauss sample file
string samplesFolder = TheApplication.SamplesDir;
string DGfile = System.IO.Path.Combine(samplesFolder, "Sequential\\Objectives\\Double Gauss 28 degree field.zos");
TheSystem.LoadFile(DGfile, false);

C++

// Open Double Gauss sample file
_bstr_t samplesFolder = TheApplication->SamplesDir;
_bstr_t DGfile = samplesFolder + (_bstr_t)"\\Sequential\\Objectives\\Double Gauss 28 degree field.zos";
TheSystem->LoadFile(DGfile, false);

Matlab

% Open Double Gauss sample file
samplesFolder = TheApplication.SamplesDir;
DGfile = System.String.Concat(samplesFolder, '\Sequential\Objectives\Double Gauss 28 degree field.zos');
TheSystem.LoadFile(DGfile, false);

Python

# Open Double Gauss sample file
samplesFolder = TheApplication.SamplesDir
DGfile = samplesFolder + r"\Sequential\Objectives\Double Gauss 28 degree field.zos"
TheSystem.LoadFile(DGfile, False)
Parameters
LensFileThe lens file.
saveIfNeededif set to true the current system will be saved before loading the new one.
Returns
Examples
CSharpStandalone_02_NSC_ray_trace.cs, CSharpStandalone_03_open_file_and_optimise.cs, CSharpStandalone_04_pull_data_from_FFTMTF.cs, CSharpStandalone_05_Read_ZRD_File.cs, CSharpStandalone_07_TiltDecenterAndMFOperand.cs, CSharpStandalone_08_NSCEDetectorData.cs, CSharpStandalone_10_NSC_ZRD_filter_string.cs, CSharpStandalone_14_Seq_Tolerance.cs, CSharpStandalone_15_Seq_Optimization.cs, CSharpStandalone_18_SetMulticonfiguration.cs, CSharpStandalone_20_export_CAD_File.cs, CSharpStandalone_22_seq_spot_diagram.cs, and CSharpStandalone_23_ray_fan_native_manual_comparison.cs.

◆ MakeNonSequential()

bool ZOSAPI.IOpticalSystem.MakeNonSequential ( )

Makes the system non-sequential if it is not already. Note that any sequential data will be lost.

Usage (see Example 17 for a full sample)

C#

//Create a New File
TheSystem.New(false);
TheSystem.MakeNonSequential();

C++

//Create a New File
TheSystem->New(false);
TheSystem->MakeNonSequential();

Matlab

% Create New File
TheSystem.New(false);
TheSystem.MakeNonSequential();

Python

# Create New File
TheSystem.New(False)
TheSystem.MakeNonSequential()
Returns
Examples
CSharpStandalone_17_NSC_BulkScatter.cs, and CSharpStandalone_21_White_LED_Phosphor.cs.

◆ MakeSequential()

bool ZOSAPI.IOpticalSystem.MakeSequential ( )

Sets the current system to sequential mode if it is not already.

Returns

◆ New()

void ZOSAPI.IOpticalSystem.New ( bool  saveIfNeeded)

Clears all data in the current system and resets it to a default state.

Usage (see Example 17 for a full sample)

C#

//Create a New File
TheSystem.New(false);
TheSystem.MakeNonSequential();

C++

//Create a New File
TheSystem->New(false);
TheSystem->MakeNonSequential();

Matlab

% Create New File
TheSystem.New(false);
TheSystem.MakeNonSequential();

Python

# Create New File
TheSystem.New(False)
TheSystem.MakeNonSequential()
Parameters
saveIfNeededif set to true the current system will be saved before it is cleared.
Examples
CSharpStandalone_01_new_file_and_quickfocus.cs, CSharpStandalone_11_Basic_Seq.cs, CSharpStandalone_17_NSC_BulkScatter.cs, CSharpStandalone_19_Surface_Properties.cs, and CSharpStandalone_21_White_LED_Phosphor.cs.

◆ Save()

◆ SaveAs()

void ZOSAPI.IOpticalSystem.SaveAs ( string  fileName)

Saves the current system to the specified file. All future calls to Save will use the same file.

Usage (see Example 14 for a full sample)

C#

// Create a "Double Gauss" folder in the Samples folder
string dirLoc = System.IO.Path.Combine(samplesFolder, "API\\CS\\e14_seq_tolerance");
System.IO.Directory.CreateDirectory(dirLoc);
// Save a copy of the file in the Double Gauss folder
string fileNameSeq = System.IO.Path.Combine(dirLoc, "Double Gauss (seq).zos");
TheSystem.SaveAs(fileNameSeq);

C++

// Create a "Double Gauss" folder in the Samples folder
_bstr_t dirLoc = samplesFolder + (_bstr_t)"\\API\\CPP\\e14_seq_tolerance";
CreateDirectory(dirLoc, NULL);
// Save a copy of the file in the Double Gauss folder
_bstr_t fileNameSeq = dirLoc + (_bstr_t)"\\Double_Gauss_(seq).zos";
TheSystem->SaveAs(fileNameSeq);

Matlab

% Create a "Double Gauss" folder in the Samples folder
dirLoc = System.String.Concat(samplesFolder, '\API\Matlab\e14_seq_tolerance');
if (exist(char(dirLoc)) == 0) mkdir(char(dirLoc)); end;
% Save a copy of the file in the Double Gauss folder
fileNameSeq = System.String.Concat(dirLoc, '\Double Gauss (seq).zos');
TheSystem.SaveAs(fileNameSeq);

Python

# Create a "Double Gauss" folder in the Samples folder
import os
dirLoc = samplesFolder + "\\API\\Python\\e14_seq_tolerance"
if not os.path.exists(dirLoc):
os.makedirs(dirLoc)
# Save new file to Double Gauss folder
fileNameSeq = dirLoc + "\\Double Gauss (seq).zos"
TheSystem.SaveAs(fileNameSeq)
Parameters
fileNameName of the file.
Examples
CSharpStandalone_01_new_file_and_quickfocus.cs, CSharpStandalone_03_open_file_and_optimise.cs, CSharpStandalone_06_nsc_phase.cs, CSharpStandalone_07_TiltDecenterAndMFOperand.cs, CSharpStandalone_08_NSCEDetectorData.cs, CSharpStandalone_09_NSC_CAD.cs, CSharpStandalone_10_NSC_ZRD_filter_string.cs, CSharpStandalone_11_Basic_Seq.cs, CSharpStandalone_12_Seq_SystemExplorer.cs, CSharpStandalone_14_Seq_Tolerance.cs, CSharpStandalone_15_Seq_Optimization.cs, CSharpStandalone_17_NSC_BulkScatter.cs, CSharpStandalone_18_SetMulticonfiguration.cs, CSharpStandalone_19_Surface_Properties.cs, CSharpStandalone_21_White_LED_Phosphor.cs, CSharpStandalone_24_nsc_detectors.cs, and CSharpStandalone_25_source_spectrum_diffraction_grating.cs.

◆ TurnOffProjectDirectory()

bool ZOSAPI.IOpticalSystem.TurnOffProjectDirectory ( )

◆ UpdateFileLists()

void ZOSAPI.IOpticalSystem.UpdateFileLists ( )

◆ UpdateStatus()

string ZOSAPI.IOpticalSystem.UpdateStatus ( )

Forces the an update of the system, and returns the current status.

Returns

Property Documentation

◆ Analyses

◆ IsNonAxial

bool ZOSAPI.IOpticalSystem.IsNonAxial
get

Gets a value indicating whether the current system is an axial, sequential system.

true if this instance is non axial; otherwise, false.

◆ IsProjectDirectory

bool ZOSAPI.IOpticalSystem.IsProjectDirectory
get

◆ LDE

ILensDataEditor ZOSAPI.IOpticalSystem.LDE
get

Gets the lens data editor.

Usage (see Example 15 for a full sample)

C#

// remove all variables and add a F# solve on last surface radius
ILensDataEditor TheLDE = TheSystem.LDE;
IOpticalSystemTools tools = TheSystem.Tools;
ILDERow Surface_Last = TheLDE.GetSurfaceAt(TheLDE.NumberOfSurfaces - 2);
ISolveData Solver = Surface_Last.RadiusCell.CreateSolveType(ZOSAPI.Editors.SolveType.FNumber);
Solver._S_FNumber.FNumber = 3.1415;
Surface_Last.RadiusCell.SetSolveData(Solver);
SampleFile = System.IO.Path.Combine(TheApplication.SamplesDir, @"API\CS\e15_Seq_Optimization\OptimizedFile1.zos");
TheSystem.SaveAs(SampleFile);
Base interface for all solve types. This interface can be accesed via the IEditorCell interface....
Definition: InterfacesEditors.cs:563
All data for a Lens Data Editor surface. This interface can be accessed via the ILensDataEditor inter...
Definition: InterfacesLDE.cs:791
This interface defines all properties and methods needed to interact with the Lens Data Editor....
Definition: InterfacesLDE.cs:265
Methods to run various system-wide tools. This interface can be accessed via the IOpticalSystem inter...
Definition: Tools.cs:107
bool RemoveAllVariables()
Removes all variables in the system.
Definition: InterfacesEditors.cs:12
The ZOSAPI namespace contains classes for initially connecting to zemax. See also ZOSAPI_Connection,...
Definition: IAS_FieldCurvatureAndDistortion.cs:5

C++

// remove all variables and add a F# solve on last surface radius
ILensDataEditorPtr TheLDE = TheSystem->LDE;
//IOpticalSystemTools
IOpticalSystemToolsPtr tools = TheSystem->Tools;
tools->RemoveAllVariables();
ILDERowPtr Surface_Last = TheLDE->GetSurfaceAt(TheLDE->NumberOfSurfaces - 2);
ISolveDataPtr Solver = Surface_Last->RadiusCell->CreateSolveType(SolveType::SolveType_FNumber);
Solver->_S_FNumber->FNumber = 3.1415;
Surface_Last->RadiusCell->SetSolveData(Solver);
SampleFile = _bstr_t(TheApplication->SamplesDir) + "\\API\\\Seq_Optimization\\\OptimizedFile1.zos";
TheSystem->SaveAs(SampleFile);

Matlab

% remove all variables and add a F# solve on last surface radius
TheLDE = TheSystem.LDE;
tools = TheSystem.Tools;
tools.RemoveAllVariables();
Surface_Last = TheLDE.GetSurfaceAt(TheLDE.NumberOfSurfaces - 2);
Solver = Surface_Last.RadiusCell.CreateSolveType(ZOSAPI.Editors.SolveType.FNumber);
Solver.S_FNumber_.FNumber = 3.1415;
Surface_Last.RadiusCell.SetSolveData(Solver);
SampleFile = System.String.Concat(TheApplication.SamplesDir, '\API\Matlab\e15_Seq_Optimization\OptimizedFile1.zos');
TheSystem.SaveAs(SampleFile);

Python

# remove all variables and add a F# solve on last surface radius
TheLDE = TheSystem.LDE
#IOpticalSystemTools
tools = TheSystem.Tools
tools.RemoveAllVariables()
Surface_Last = TheLDE.GetSurfaceAt(TheLDE.NumberOfSurfaces - 2)
Solver = Surface_Last.RadiusCell.CreateSolveType(ZOSAPI.Editors.SolveType.FNumber)
Solver._S_FNumber.FNumber = 3.1415
Surface_Last.RadiusCell.SetSolveData(Solver)
SampleFile = TheApplication.SamplesDir + '\\API\\Python\\e15_Seq_Optimization\\OptimizedFile1.zos'
TheSystem.SaveAs(SampleFile)

The lens data editor.

Examples
CSharpStandalone_01_new_file_and_quickfocus.cs, CSharpStandalone_03_open_file_and_optimise.cs, CSharpStandalone_07_TiltDecenterAndMFOperand.cs, CSharpStandalone_11_Basic_Seq.cs, CSharpStandalone_12_Seq_SystemExplorer.cs, CSharpStandalone_15_Seq_Optimization.cs, CSharpStandalone_19_Surface_Properties.cs, CSharpStandalone_22_seq_spot_diagram.cs, CSharpStandalone_23_ray_fan_native_manual_comparison.cs, and CSharpUserOperand_16_SumAbsoluteThickness.cs.

◆ MCE

IMultiConfigEditor ZOSAPI.IOpticalSystem.MCE
get

Gets the multi-configuration editor.

The multiple configuration editor

Examples
CSharpStandalone_18_SetMulticonfiguration.cs, and CSharpStandalone_25_source_spectrum_diffraction_grating.cs.

◆ MFE

IMeritFunctionEditor ZOSAPI.IOpticalSystem.MFE
get

Gets the merit function editor.

Usage (see Example 03 for a full sample)

C#

// Merit functions
IMeritFunctionEditor TheMFE = TheSystem.MFE;
IMFERow Operand_1 = TheMFE.GetOperandAt(1);
Operand_1.ChangeType(MeritOperandType.ASTI);
Operand_1.Target = 0.0;
Operand_1.Weight = 10.0;
All data for a Merit Function Editor operand. This interface can be accessed via the IMeritFunctionEd...
Definition: InterfacesMFE.cs:696
bool ChangeType(MeritOperandType type)
Changes to the specified operand type.
This interface defines all properties and methods needed to interact with the MRit Function Editor....
Definition: InterfacesMFE.cs:491
MeritOperandType
All supported Merit Function operands.
Definition: InterfacesMFE.cs:19

C++

// Merit functions
IMeritFunctionEditorPtr TheMFE = TheSystem->MFE;
IMFERowPtr Operand_1 = TheMFE->GetOperandAt(1);
Operand_1->ChangeType(MeritOperandType_ASTI);
Operand_1->Target = 0.0;
Operand_1->Weight = 10.0;

Matlab

% Merit functions
TheMFE = TheSystem.MFE;
Operand_1 = TheMFE.GetOperandAt(1);
Operand_1.ChangeType(ZOSAPI.Editors.MFE.MeritOperandType.ASTI);
Operand_1.Target = 0.0;
Operand_1.Weight = 10.0;
Definition: InterfacesMFE.cs:12

Python

# Merit functions
TheMFE = TheSystem.MFE
Operand_1 = TheMFE.GetOperandAt(1)
Operand_1.ChangeType(ZOSAPI.Editors.MFE.MeritOperandType.ASTI)
Operand_1.Target = 0.0
Operand_1.Weight = 10.0

The merit function editor.

Examples
CSharpStandalone_03_open_file_and_optimise.cs, CSharpStandalone_07_TiltDecenterAndMFOperand.cs, CSharpStandalone_15_Seq_Optimization.cs, and CSharpStandalone_23_ray_fan_native_manual_comparison.cs.

◆ Mode

SystemType ZOSAPI.IOpticalSystem.Mode
get

Gets the current sequential/non-sequential status.

The mode.

◆ NCE

INonSeqEditor ZOSAPI.IOpticalSystem.NCE
get

Gets the non-sequential component editor.

Usage (see Example 17 for a full sample)

C#

//Non-sequential component editor
INonSeqEditor TheNCE = TheSystem.NCE;
TheNCE = TheSystem.NCE;
INCERow Object_1 = TheNCE.InsertNewObjectAt(1);
INCERow Object_2 = TheNCE.InsertNewObjectAt(2);
INCERow Object_3 = TheNCE.GetObjectAt(3);
All data for a Non-Sequential Component Editor object. This interface can be accessed via the INonSeq...
Definition: InterfacesNCE.cs:1198
This interface defines all properties and methods needed to interact with the Non-Sequential Componen...
Definition: InterfacesNCE.cs:363

C++

//Non-sequential component editor
INonSeqEditorPtr TheNCE = TheSystem->NCE;
TheNCE = TheSystem->NCE;
INCERowPtr Object_1 = TheNCE->InsertNewObjectAt(1);
INCERowPtr Object_2 = TheNCE->InsertNewObjectAt(2);
INCERowPtr Object_3 = TheNCE->GetObjectAt(3);

Matlab

% Non-sequential component editor
TheNCE = TheSystem.NCE;
Object_1 = TheNCE.InsertNewObjectAt(1);
Object_2 = TheNCE.InsertNewObjectAt(2);
Object_3 = TheNCE.GetObjectAt(3);

Python

# Non-sequential component editor
TheNCE = TheSystem.NCE
Object_1 = TheNCE.InsertNewObjectAt(1)
Object_2 = TheNCE.InsertNewObjectAt(2)
Object_3 = TheNCE.GetObjectAt(3)

The non-sequential component editor.

Examples
CSharpStandalone_02_NSC_ray_trace.cs, CSharpStandalone_05_Read_ZRD_File.cs, CSharpStandalone_06_nsc_phase.cs, CSharpStandalone_08_NSCEDetectorData.cs, CSharpStandalone_09_NSC_CAD.cs, CSharpStandalone_10_NSC_ZRD_filter_string.cs, CSharpStandalone_17_NSC_BulkScatter.cs, CSharpStandalone_21_White_LED_Phosphor.cs, CSharpStandalone_24_nsc_detectors.cs, and CSharpStandalone_25_source_spectrum_diffraction_grating.cs.

◆ NeedsSave

bool ZOSAPI.IOpticalSystem.NeedsSave
get

◆ SessionMode

SessionModes ZOSAPI.IOpticalSystem.SessionMode
getset

◆ STARSubsystem

ISTARSubsystem ZOSAPI.IOpticalSystem.STARSubsystem
get

Gets the ISTARSubsystem to control/access some STAR settings and system-level data.

The ISTARSubsystem interface.

◆ SystemData

ISystemData ZOSAPI.IOpticalSystem.SystemData
get

Data for configuring everything in the System Explorer.

Usage (see Example 15 for a full sample)

C#

//Define System Explorer
//Define Aperture
ISystemData SystExplorer = TheSystem.SystemData;
SystExplorer.Aperture.ApertureType = ZOSAPI.SystemData.ZemaxApertureType.EntrancePupilDiameter;
SystExplorer.Aperture.ApertureValue = 20;
Interfaces and methods for changing all System Explorer data. This interface can be accessed via the ...
Definition: InterfacesSE.cs:275
Definition: InterfacesSE.cs:11

C++

// Define System Explorer
// Define Aperture
ISystemDataPtr SystExplorer = TheSystem->SystemData;
SystExplorer->Aperture->ApertureType = ZemaxApertureType::ZemaxApertureType_EntrancePupilDiameter;
SystExplorer->Aperture->ApertureValue = 20;

Matlab

%Define System Explorer
%Define Aperture
SystExplorer = TheSystem.SystemData;
SystExplorer.Aperture.ApertureType = ZOSAPI.SystemData.ZemaxApertureType.EntrancePupilDiameter;
SystExplorer.Aperture.ApertureValue = 20;

Python

# Define System Explorer
# Define Aperture
SystExplorer = TheSystem.SystemData
SystExplorer.Aperture.ApertureType = ZOSAPI.SystemData.ZemaxApertureType.EntrancePupilDiameter
SystExplorer.Aperture.ApertureValue = 20

The system data.

Examples
CSharpStandalone_01_new_file_and_quickfocus.cs, CSharpStandalone_11_Basic_Seq.cs, CSharpStandalone_12_Seq_SystemExplorer.cs, CSharpStandalone_15_Seq_Optimization.cs, CSharpStandalone_17_NSC_BulkScatter.cs, CSharpStandalone_19_Surface_Properties.cs, CSharpStandalone_21_White_LED_Phosphor.cs, CSharpStandalone_22_seq_spot_diagram.cs, CSharpStandalone_23_ray_fan_native_manual_comparison.cs, and CSharpStandalone_24_nsc_detectors.cs.

◆ SystemFile

string ZOSAPI.IOpticalSystem.SystemFile
get

Gets the full path and file name for the current system.

The system file.

◆ SystemID

int ZOSAPI.IOpticalSystem.SystemID
get

Gets a unique identifier for the current system; this can be used to differentiate between multiple IOpticalSystem instances, and to identify the relevant system in a OpticalSystemStatusChangedHandler event.

The system identifier.

◆ SystemName

string ZOSAPI.IOpticalSystem.SystemName
getset

Gets or sets the name of the current system.

The name of the system.

◆ TDE

IToleranceDataEditor ZOSAPI.IOpticalSystem.TDE
get

Gets the tolerance data editor.

The tolerance data editor.

Examples
CSharpStandalone_14_Seq_Tolerance.cs.

◆ TheApplication

IZOSAPI_Application ZOSAPI.IOpticalSystem.TheApplication
get

Gets the IZOSAPI_Application that owns this system.

The owning IZOSAPI_Application interface.

◆ Tools

◆ UpdateMode

LensUpdateMode ZOSAPI.IOpticalSystem.UpdateMode
getset

Gets or sets the update mode used by the API when the system is modified. Note that this is different than the update mode saved with the current ZMX file. The default value is LensUpdateMode.EditorsOnly.

The update mode.

Connect with Ansys