ZEMAX | 如何使用MATLAB通过交互扩展连接到ZOS-API

蓝图分享网 2022-12-15 11:31:59 469阅读 0评论

本文将展示如何使用MATLAB通过交互扩展 (Interactive Extension) 连接到ZOS-API。在交互扩展模式下,像MATLAB或Python这样的脚本环境可以直接连接到OpticStudio,这样对脚本所做的更改就可以在OpticStudio中实时执行。

作者 Thomas Pickering

简介

可以通过您更熟悉的脚本语言使用ZOS-API工具与OpticStudio进行连接和交互。这个功能对于直接处理冗长的分析或重复的过程特别方便。通过使用API的交互扩展模式功能可以与OpticStudio一起调用外部程序来编辑系统。MATLAB是可以使用交互扩展功能的编程工具之一。

本文将展示如何激活交互扩展,并通过MATLAB使用交互扩展来进行OpticStudio编程。

创建交互扩展脚本

要创建连接到交互扩展的模板,请转到“编程 (Programming) ”选项卡并单击:ZOS-API.NET应用程序生成器 (ZOS-API.NET Application Builders) > MATLAB >交互扩展 (Interactive Extension) 

ZEMAX | 如何使用MATLAB通过交互扩展连接到ZOS-API 第1张

将该脚本放在ZOS-API项目文件夹 (Project Folder):{Zemax}\ZOS-API Projects\MATLABZOSConnection 中。

如果创建了多个这样的文件,将对文件名进行依次编号。然后MATLAB自动启动,并在编辑器 (Editor) 中打开脚本模板。

ZEMAX | 如何使用MATLAB通过交互扩展连接到ZOS-API 第2张

连接到交互扩展

要启动交互扩展,请找到OpticStudio中的编程 ( Programming ) 选项卡,并选择交互扩展(Interactive Extension)。

ZEMAX | 如何使用MATLAB通过交互扩展连接到ZOS-API 第3张

对话框窗口自动打开,OpticStudio等待外部应用程序连接。

ZEMAX | 如何使用MATLAB通过交互扩展连接到ZOS-API 第4张

对话框显示OpticStudio运行实例的ID。MATLAB在运行多个OpticStudio实例时,可以连接到一个特定实例。

  • 点击运行(Run)

ZEMAX | 如何使用MATLAB通过交互扩展连接到ZOS-API 第5张

一旦开始运行,交互扩展的状态显示为“已连接”,如下图所示:

ZEMAX | 如何使用MATLAB通过交互扩展连接到ZOS-API 第6张

MATLAB工作空间显示变量ans。

ZEMAX | 如何使用MATLAB通过交互扩展连接到ZOS-API 第7张

然后在命令窗口写下:

TheApplication = ans;

或者在命令窗口,可以通过在括号中放入正确的数字来指定OpticStudio实例,该函数将返回ZOSAPI_Application类型的对象。连接模式可以视为扩展 Extension ) 

ZEMAX | 如何使用MATLAB通过交互扩展连接到ZOS-API 第8张

现在,可以使用MATLAB命令窗口执行各个API命令。

终止连接

可以通过单击交互扩展对话框中的终止 ( Terminate ) 按钮或在MATLAB命令窗口中运行CloseApplication方法来终止连接:

ZEMAX | 如何使用MATLAB通过交互扩展连接到ZOS-API 第9张

ZEMAX | 如何使用MATLAB通过交互扩展连接到ZOS-API 第10张

免责声明:

1、本站所有资源文章出自互联网收集整理,本站不参与制作,如果侵犯了您的合法权益,请联系本站我们会及时删除。

2、本站发布资源来源于互联网,可能存在水印或者引流等信息,请用户擦亮眼睛自行鉴别,做一个有主见和判断力的用户。

3、本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。

4、侵权违法和不良信息举报 举报邮箱:cnddit@qq.com

发表评论

快捷回复: 表情:
AddoilApplauseBadlaughBombCoffeeFabulousFacepalmFecesFrownHeyhaInsidiousKeepFightingNoProbPigHeadShockedSinistersmileSlapSocialSweatTolaughWatermelonWittyWowYeahYellowdog
验证码
评论列表 (暂无评论,469人围观)

还没有评论,来说两句吧...