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
下一部分: