SETSURFACEPROPERTY、SURP(SETSURFACEPROPERTY, SURP)

设置表面属性。

语法:

SETSURFACEPROPERTY surface, code, value1, value2
SURP surface, code, value1, value2
 

详述:

surface是一个计算结果为整数的表达式,指定表面编号。code是一个计算结果为整数的表达式,或者是助记符,用于指定要修改表面的哪些属性。第三个和第四个参数表示指定表面属性的新值,可能是引号中的文本、字符串变量或数值表达式,具体取决于code。对于大多数code,需要修改的属性值由value1参数定义。少数操作数同时需要value1和value2定义,如下表所述。

如果要修改的属性由多重结构编辑器控制,那么当前结构的多重结构数据也会发生变化,以显示更改的属性。

若要将某个表面设置为光阑面,请参阅"STOPSURF"。

SURP是SETSURFACEPROPERTY的缩写,功能完全相同。

代码 属性
表面基础数据。请参阅"镜头数据(Lens Data)"。
0或TYPE

表面类型。value是物体的名称,比如表示标准表面的"STANDARD"。在表面数据概要的分类报表中列出了当前镜头数据编辑器中每个表面的类型名称。

参阅本页下方的"表面名称"总结表。

若要将表面类型更改为用户自定义表面,请首先使用代码9(SDLL)来设置DLL名称,然后将新的表面类型设置为USERSURF。

另请参阅代码17(Code 17)。

1或COMM 注释。
2或CURV 镜头单位的倒数表示的曲率(不是半径)。使用0表示无穷大半径。
3或THIC 厚度,以镜头单位表示。
4或GLAS 玻璃名称。另请参阅代码18(Code 18)。
5或CONI 圆锥系数。
6或SDIA 净口径或半直径。如果value为0或正数,则净口径或半直径的求解类型设置为"固定"。如果value为负数,则净口径或半直径的求解类型设置为"自动",并且净口径或半直径的值由下一个UPDATE关键字计算得到。
7或TCE 热膨胀系数。
8或COAT 膜层名称。将value1设置为空白字符串,可删除膜层。
9或SDLL 用户自定义表面DLL名称。
10或PARM 参数值。value1为新的数值。value2为参数编号。
11或EDVA 附加数据值。value1为新的数值。value2为附加数据编号。
12 表面颜色,用0表示默认值。
13 表面透明度。
14 行颜色。
15 表面不能是超半球面。使用1可避免表面成为超半球面。
16 忽略表面。用1表示忽略表面,0表示不忽略表面。
17或CODE 表面类型的整数代码。整数代码是使用代码0设置表面名称的备用选项。有关更多详情,请参阅上文中对代码0的说明。
18或GLAN 玻璃编号。另请参阅代码4(Code 4)。
表面孔径数据。请参阅"表面属性中的孔径选项卡(Surface properties aperture tab)"。
20或ATYP 表面孔径类型代码。
21或APP1 表面孔径参数1。
22或APP2 表面孔径参数2。
23或APDX 表面孔径x偏心。
24或APDY 表面孔径y偏心。
25或UDA 用户自定义孔径(UDA)文件名。
26或APPU 表面孔径拾取求解的表面编号。用0表示无拾取。
27或CHZN 表面的延伸区。
28或MCSD 机械半直径。如果value为0或正数,则机械半直径的求解类型设置为"固定"。如果value为负数,则机械半直径的求解类型设置为"自动",并且机械半直径的值由下一个UPDATE关键字计算得到。
物理光学传播设置。请参阅"表面特定设置(Surface specific settings)"。
30 物理光学设置"用几何光线传播到下一表面(Use Rays To Propagate To Next Surface)"。用1表示勾选,0表示未勾选。
31 物理光学设置"不用几何光线数据缩放光束尺寸(Do Not Rescale Beam Size Using Ray Data)"。用1表示勾选,0表示未勾选。
32 物理光学设置"采用角谱算法(Use Angular Spectrum Propagator)"。用1表示勾选,0表示未勾选。
33 物理光学设置"在实体模型上显示ZBF(Draw ZBF On Shaded Model)"。用1表示勾选,0表示未勾选。
34 物理光学设置"重新计算导向光束参数(Recompute Pilot Beam Parameters)"。用1表示勾选,0表示未勾选。
35 物理光学设置"折射后重新采样(Resample After Refraction)"。用1表示勾选,0表示未勾选。
36 物理光学设置"自动重新采样(Auto Resample)"。用1表示勾选,0表示未勾选。
37 物理光学设置"新建X采样(New X Sampling)"。用1表示32,2表示64等。
38 物理光学设置"新建Y采样(New Y Sampling)"。用1表示32,2表示64等。
39 物理光学设置"新建X宽度(New X-Width)"。新建数组的x方向全宽。
40 物理光学设置"新建Y宽度(New Y-Width)"。新建数组的y方向全宽。
41 物理光学设置"输出导向半径(Output Pilot Radius)"。使用0表示最佳拟合,1表示更短,2表示更长,3表示x,4表示y,5表示平面,6表示用户。
42、43 分别为物理光学设置"X半径(X Radius)"和"Y半径(Y Radius)"。
44 物理光学设置"采用X轴参考(Use X-axis Reference)"。用1表示勾选,0表示未勾选。
膜层设置。请参阅"表面膜层选项卡(Surface coating tab)"。另请参阅上述代码8。
50 使用多膜层和折射率偏移。用1表示勾选,0表示未勾选。
51 多膜层值。value1为新的数值。value2为膜层编号。
52 多膜层状态。value1为状态,用0表示固定,1表示变量,或者用n+1表示拾取膜层n。
53 膜层折射率偏移值。value1为新的数值。value2为膜层编号。
54 膜层折射率偏移状态。value1为状态,用0表示固定,1表示变量,或者用n+1表示拾取膜层n。
55 膜层消光偏移值。value1为新的数值。value2为膜层编号。
56 膜层消光偏移状态。value1为状态,用0表示固定,1表示变量,或者用n+1表示拾取膜层n。
表面倾斜和偏心数据。请参阅"表面属性中的倾斜/偏心选项卡(Surface tilt/decenter tab)"。
60或BOR 面之前的倾斜和偏心顺序。用0表示偏心/倾斜,用1表示倾斜/偏心。
61或BDX 面之前x偏心。
62或BDY 面之前y偏心。
63或BTX 面之前x倾斜
64或BTY 面之前y倾斜
65或BTZ 面之前z倾斜
66或APU 面之后的拾取状态:0表示直接,1或2表示拾取或翻转当前表面,3或4表示拾取或翻转当前表面减1,5或6表示拾取或翻转当前表面减2,以此类推。
70或AOR 面之后倾斜和偏心顺序。用0表示偏心/倾斜,用1表示倾斜/偏心。
71或ADX 面之后x偏心。
72或ADY 面之后y偏心。
73或ATX 面之后x倾斜。
74或ATY 面之后y倾斜。
75或ATZ 面之后z倾斜。
76

坐标返回状态。仅在坐标断点面上有效。用0表示无,1表示

仅方向,2表示XY方向,3表示XYZ方向。

77 坐标返回至表面。仅在坐标断点面上有效。
表面散射数据。请参阅"表面属性中的散射选项卡(Surface properties scattering tab)"。
80 设置散射代码:用0表示无,1表示朗伯,2表示高斯,3表示ABg,4表示DLL,5表示BSDF,6表示ABg文件。
81 设置散射分数,在0.0到1.0之间。
82 设置高斯散射Sigma。
83 设置ABg文件名称。
84 设置用户自定义散射DLL的名称。若要设置参数,请参阅Code 181。
85 设置用户自定义散射DLL使用的数据文件名称。
86 设置BSDF文件名称。value必须是BSDF文件的名称,且不含路径(如BrownVinyl.bsdf)。
87

设置ABg数据文件名称。value必须是ABGF文件的名称,且不含路径

(如SampleABGF.abgf)。

表面绘制数据。请参阅"表面属性中的绘制选项卡(Surface properties draw tab)"。
90 设置"将光线隐藏至这个表面(Hide Rays To This Surface)"复选框状态:用0表示关闭,1表示开启。
91 设置"跳过光线,直接到这个面(Skip Rays To This Surface)"复选框状态:用0表示关闭,1表示开启。
92 设置"不绘制此表面(Do Not Draw This Surface)"复选框状态:用0表示关闭,1表示开启。
93 设置"不绘制此表面的边缘(Do Not Draw Edges From This Surface)"复选框状态:用0表示关闭,1表示开启。
96 设置"绘制边缘为(Draw Edges As)"状态:0表示方形,1表示锥形,2表示平面。
97 设置"镜面基底(Mirror Substrate)"状态:0表示无,1表示平面,2表示弯曲。
98 设置镜面基板厚度值。
用户自定义面散射DLL参数。请参阅"表面属性中的散射选项卡(Surface properties scattering tab)"。
181-186 设置用户自定义的散射DLL参数1-6。

更改表面属性之后,通常需要执行UPDATE关键字(参阅"UPDATE"),以更新光瞳位置、求解以及正确光线追迹所必需的其它数据。OpticStudio不会自动执行UPDATE,因为执行所有SETSURFACEPROPERTY关键字之后再执行一次UPDATE,这样运行速度会更快。函数SPRO使用类似的语法和相同代码值来"获取"表面属性值,而不是"设置"这些值。

示例:

! Set the glass type on surface 7 to BK7
SETSURFACEPROPERTY 7, GLAS, "BK7"
! Set the thickness of surface 2 to the thickness of surface 1
SETSURFACEPROPERTY 2, THIC, THIC(1)
! Set the value of parameter 4 on surface 11 to 7.3
SURP 11, PARM, 7.3, 4
 
表面类型 名称
标准面 STANDARD
偶次非球面 EVENASPH
奇次非球面 ODDASPHE
近轴 近轴
近轴XY PARAX_XY
双锥 BICONICX
Toroidal光栅 TOROGRAT
三次样条 CUSPLINE
全息面1 HOLOGRM1
全息面2 HOLOGRM2
坐标断点 COORDBRK
多项式 POLYNOMI
菲涅尔面 FRESNELS
ABCD ABCDSURF
备用偶次面 ALTERNAT
备用奇次面 ALTERNAO
衍射光栅 DGRATING
共轭 CONJUGAT
倾斜面 TILTSURF
不规则面 IRREGULA
渐变1 GRINSUR1
渐变2 GRINSUR2
渐变3 GRINSUR3
渐变4 GRINSUR4
渐变5 GRINSUR5
渐变6 GRINSUR6
渐变7 GRINSUR7
Gradium GRINSUR8
渐变9 GRINSUR9
渐变10 GRINSU10
渐变12 GRINSU12
逆反射 RETROREF
Toroidal TOROIDAL
Zernike Fringe矢高 FZERNSAG
Zernike Fringe相位 FZERNPHA
Zernike Standard矢高 SZERNSAG
Zernike Standard相位 SZERNPHA
Zernike Annular相位 AZERNPHA
双锥Zernike BICONICZ
扩展多项式 XPOLYNOM
二元光学1 BINARY_1
二元光学2 BINARY_2
二元光学3 BINARY_3
二元光学4 BINARY_4
扩展三次样条 XCUSPLIN
扩展非球面 XASPHERE
扩展奇次非球面 XOSPHERE
可变刻线距离光栅 VARLSGRT
椭圆光栅1 ELLIGRAT
椭圆光栅2 ELLIGRA2
超圆锥面 SUPERCON
扩展菲涅尔 XFRESNEL
菲涅尔柱面 CFRESNEL
网格矢高 GRID_SAG
网格相位 GRID_PHA
通用菲涅尔面 GEN_FRES
周期面 PERIODIC
Toroidal全息 TOROHOLO
大气折射 ATMOSPHR
波带片 ZONEPLAT
Q型非球面 QED_TYPE
琼斯矩阵 JONESMAT
Zernike Annular Standard矢高 AZERNSAG
切比雪夫多项式 CHEBYSHV
黑盒透镜 BLACKBOX
滑块 SLIDESRF
用户自定义面 USERSURF
双折射输入 BIRE__IN
双折射输出 BIRE_OUT
光学制造全息 OFABHOL1
径向NURBS RADNURBS
Toroidal NURBS面 TORNURBS
扩展Toroidal光栅面 TOROGRAX
径向光栅 RGRATING
奇次余弦面 ODDCOSIN
非序列模式元件 NONSEQCO
数据 DATASURF
离轴圆锥自由曲面 OFFAXISCF
Q型自由曲面 QFREEFORM

相关函数:

SPRO

相关关键字:

SETSYSTEMPROPERTY、UPDATE

下一部分: