当前位置:服务支持 >  软件文章 >  ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio

阅读数 8
点赞 0
article_banner


本文演示了如何使用Python通过交互扩展(Interactive Extension)连接到ZOS-API。一旦连接到OpticStudio,交互扩展就可以执行自定义扩展能够执行的任何任务,并且OpticStudio界面将交互式地显示该任务的结果。

作者 Sandrine Auriol

附件下载

(联系工作人员领取文章附件)

简介

交互扩展模式几乎与自定义扩展(User Extension)相同,除了交互扩展不必是独立的可执行文件。交互扩展可以从脚本环境(如:Matlab或Python)进行连接,在这些脚本环境中没有可使OpticStudio启动的已编译可执行文件。

交互扩展从外部脚本环境交互地控制OpticStudio界面。本文将解释如何将OpticStudio与交互扩展连接起来。

创建交互扩展脚本

要创建连接到交互扩展的编程模板,请单击:编程(Programming) > Python >交互扩展(Interactive Extension)

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图1

将该脚本放置在ZOS-API项目文件夹:..\Documents\Zemax\ZOS-API Projects\PythonZOSConnection 中。

如果创建了多个交互扩展,那么文件名将按顺序编号。

软件将在文件所在位置打开文件选项(File Explorer)

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图2

连接到交互扩展

要启动交互扩展,请单击“编程(Programming) >交互扩展(Interactive Extension)”。

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图3

将打开对话框窗口,OpticStudio将等待外部应用程序(在本例中是Python)连接。

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图4

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

下一步取决于所使用的集成开发环境(Integrated Development Environment ,IDE)。

IDLE(Python自带的原生IDE)

  • 右键单击脚本文件

  • 选择“集成开发环境编辑器中编辑 ( Edit in the IDLE )”、“使用集成开发环境编辑器编辑 ( Edit with IDLE )”Python版本

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图5

  • 运行代码

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图6

  • 互扩展的状态显示扩展已连接。

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图7

  • 现在可以在 Python 命令窗口中执行单个命令。
    例如,可以加载示例文件:

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图8

  • OpticStudio 打开的实例将显示加载的文件,Python命令窗口将在文件成功加载时返回布尔值“True”。

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图9

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图10

  • 一旦执行命令,shell中显示 “>>>” 意味着它已经为处理新的命令做好了准备。

PyCharm IDE:

  • 在 PyCharm 中打开PythonZOSConnectionX.py的代码。

  • 点击右键选择“在控制台运行文件(Run File in Console)”:

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图11

  • 控制台窗口将指示连接的状态,然后在控制台中执行各个命令。

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图12

右侧窗格显示项目可用的变量。

这意味着在使用交互扩展时存在“语法提示 ( Intellisense )”。

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图13

Python也可以执行代码块。例如,打开附件,附件中的脚本摘录自示例文件:" \Zemax\ZOS-API Sample Code\Python\PythonStandalone_01_new_file_and_quickfocus.py "。连接到ZOS-API的代码行已被删除。

选择脚本。点击右键并选择“控制台执行代码(Execute Selection in Console)”。

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图14

OpticStudio 显示新创建的文件。

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图15

控制台显示新的变量:

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图16

终止连接

可以通过单击“交互扩展”对话框中的“终止(Terminate)”来终止连接。

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图17

或者在Python命令窗口中运行CloseApplication方法。

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图18


ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图19

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图20

点击图片查看培训详情


相关阅读 - 编程

ZEMAX | 在MATLAB中使用ZOS-API的技巧

ZEMAX | 了解 ZOS-API 的主要接口——MATLAB

ZEMAX | 使用 ZPL 宏进行优化:ZPLM 操作数

ZEMAX | 如何编写 ZPL 宏:计算环带垂轴色差

ZEMAX | ZOS-API、ZPL 和 DLL 之间的区别

ZEMAX  | 如何使用 ZOS-API 创建飞行时间自定义分析

ZEMAX | 如何使用 ZPL 创建用户自定义求解



欢迎扫码添加宇熠工作人员微信,

进入 zemax 微信交流群。

一起来学习光学设计吧!

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图21

扫码邀您入群


如果您对产品感兴趣,或需要技术支持,欢迎致电垂询!

电话:027-87878386

邮箱:market@ueotek.com

关注武汉宇熠视频号 查看更多精彩视频 


ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图22
ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图23

武汉宇熠科技是 ZEMAX 中国区官方指定代理商,提供 ZEMAX 光学设计软件的培训、销售、技术支持、二次开发、解决方案及 ZEMAX 软件相关全方位定制服务。有关 ZEMAX ,您可以点击文末“阅读原文”了解更多信息,或致电垂询武汉宇熠工作人员:

销售热线:027-87878386

咨询邮箱:sales@ueotek.com

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图24
ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图25


ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图26

ZEMAX | 使用ZOS-API交互扩展连接Python与OpticStudio的图27


👇点击阅读原文咨询产品或技术支持。


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删
相关文章
QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空