吾爱光设

会员须知
会员须知
实用帮助
实用帮助
查看: 3457|回复: 1

ZEMAX中的编程 ZOS-API 介绍以及应用(1)

[复制链接]
  • TA的每日心情

    2023-12-26 20:47
  • 签到天数: 349 天

    [LV.8]以坛为家I

    18

    主题

    141

    回帖

    111

    积分

    入门

    积分
    111
    发表于 2023-11-13 20:43 | 显示全部楼层 |阅读模式
    在zemax高版本中提供了一个应用程序编程接口(ZOS-API),可以使用最新的软件技术连接和定制应用程序。虽然ZOS-API依赖于COM接口,但它基于于.NET库,因此可以使用C++(COM)或C#(.NET)、甚至是matlab和python,使用API进行编程。
    在上述的几种语言中,又提供了四种模式:
    1 独立模式:应用程序将启动OpticStudio的全新实例(其他模式取决于是否存在已打开的现有实例)。因此,在以这种模式启动应用程序之前,必须确保已经打开了1个或更少的OpticStudio实例(以保持在OpticStudio的许可限制范围内)。在这种模式下,OpticStudio实际上是作为一个服务器,没有用户界面。(不能打开两个文件,否侧超出上限报错)
    2 用户扩展模式:允许构建类似于在DDE协议下编写的扩展的应用程序,用于进程间通信(有关更多详细信息,请参阅“关于扩展”一节)。提供了一个切换,用于确定在该模式下运行时,用户界面是否与程序中所做的更改保持最新
    3 用户操作数模式:链接到Merit函数编辑器中用户定义的操作数,该操作数使用UDOC操作数添加到编辑器中。该模式将不允许改变当前镜头系统或用户界面(即,在该模式中,只允许改变系统的副本)。在此模式下,无法访问文件中打开的分析列表,因为如果需要,始终可以运行分析的新实例。
    4 用户分析模式:链接到单个分析窗口。此模式与用户操作数模式几乎相同,只是用于填充自定义分析的数据。数据使用OpticStudio中为大多数分析提供的现代图形显示。
    这些模式通常可分为2类:1)完全控制(独立和用户扩展模式),其中用户通常对镜头设计和用户界面具有完全控制;2)有限访问(用户操作数和用户分析模式),在其中用户被锁定为使用现有镜头文件的副本。
    对各种通信模式进行分类的另一种方法是基于应用程序连接到OpticStudio的方法。您的应用程序是独立的,将启动自己的OpticStudio副本(独立模式),或者OpticStudio已经在运行,并将调用您的应用软件(所有其他模式,我们称之为“固有”模式)。
    请注意,当使用固有模式构建的应用程序编译为可执行(.exe)文件时,就像使用独立模式构建的程序一样,为了让OpticStudio使用固有模式应用程序,需要将.exe文件复制(或构建)到OpticStudio安装中的特定文件夹中。给定的文件夹名称将特定于您的个人安装;我们将把它称为{program}文件夹。文件必须包含在如下文件夹:
    在用户扩展模式下构建的应用程序需要放在{program}\ZOS-API\Extensions文件夹中

    以用户操作数模式构建的应用程序需要放在{program}\ZOS-API\Operands文件夹中

    在用户分析模式下构建的应用程序需要放在{program}\ZOS-API\User Analysis文件夹中


    一旦应用程序在4种可用模式中的1种模式下初始化了与OpticStudio的通信,就可以加载文件,更改系统设置,并可以从任何数量的分析中获得数据(详细信息如下)。注意,可以在4种可用通信模式中的任何一种模式下加载多个系统设计(即ZMX文件)。



    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2022-8-23 16:33
  • 签到天数: 93 天

    [LV.6]常住居民II

    1

    主题

    29

    回帖

    1

    积分

    小白

    积分
    1
    发表于 2024-10-9 19:58 | 显示全部楼层
    新版的實在不太會用參考一下
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    联系我们|本论坛只支持PC端注册|手机版|小黑屋|吾爱光设 ( 粤ICP备15067533号 )

    GMT+8, 2024-11-6 06:59 , Processed in 0.125000 second(s), 21 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表