Hi harry,
If those codes are not in available in MODIFYSETTINGS, I doubt you’ll be able to do it in ZPL.
The first thing to do to check how the settings of an analysis in the ZOS-API can be modified is to check the HasAnalysisSpecificSettings property. If you run the code below (Python):
1
2geo_mtf = TheSystem.Analyses.New_GeometricMtf()
3
4
5if geo_mtf.HasAnalysisSpecificSettings:
6 print('Geometric MTF has its settings implemented in the ZOS-API')
You should get the following result:
Geometric MTF has its settings implemented in the ZOS-API
What this means is that the settings of Geometric MTF are directly available from the ZOS-API. You can find them in the ZOS-API Syntax Help (ZOSAPI.Analysis.Settings.Mtf.IAS_GeometricMtf Interface Reference):
Properties |
IAS_Field | Field [get] |
IAS_Wavelength | Wavelength [get] |
SampleSizes | SampleSize [get, set] |
bool | MultiplyByDiffractionLimit [get, set] |
bool | ScatterRays [get, set] |
bool | UseDashes [get, set] |
bool | UsePolarization [get, set] |
double | MaximumFrequency [get, set] |
This is a small Python example for you:
1
2geo_mtf = TheSystem.Analyses.New_GeometricMtf()
3
4
5geo_mtf_set = geo_mtf.GetSettings()
6
7
8field = 1
9geo_mtf_set.Field.SetFieldNumber(field)
10
11
12wave = 1
13geo_mtf_set.Wavelength.SetWavelengthNumber(wave)
14
15
16sampling = ZOSAPI.Analysis.SampleSizes.S_32x32
17geo_mtf_set.SampleSize = sampling
18
19
20geo_mtf_set.UsePolarization = True
21
22
23geo_mtf.ApplyAndWaitForCompletion()
I hope this helps, and take care,
David