吾爱光设

会员须知
会员须知
实用帮助
实用帮助
查看: 527|回复: 11

[我分享] zemax和python交互方法

[复制链接]
  • TA的每日心情
    奋斗
    2024-10-15 14:06
  • 签到天数: 60 天

    [LV.6]常住居民II

    17

    主题

    33

    回帖

    0

    积分

    小白

    积分
    0
    发表于 2024-10-12 19:57 | 显示全部楼层 |阅读模式
    刚开始弄zemax与python通过zos进行交互,记录一下。

    zemax版本18.9,PYTHON 3.12
    (1)点击zemax编程选项里的python,选择里面的 交互拓展,用pycharm等软件打开

    (2)点击ZOSAPI帮助里面的语法帮助,按下面的路径找到zemax自带案例代码,我随便选了一个画MTF曲线的,将里面的代码复制到刚才打开的python文件中




    (3)先点击zemax里面的交互拓展选项,然后运行Python文件就能实现交互




    问题报错解决:最开始运行不了报错,找了一圈资料,发现zemax自带的代码是用PythonStandaloneApplication类的,要改为PythonZOSConnection类,
    代码如下:






    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?注册

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

    使用道具 举报

  • TA的每日心情
    难过
    2024-11-1 22:39
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    4

    主题

    18

    回帖

    0

    积分

    小白

    积分
    0
    发表于 2024-10-12 22:33 | 显示全部楼层
        raise PythonZOSConnection.Exception("License is not valid for ZOSAPI use")           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: type object 'PythonZOSConnection' has no attribute 'Exception'
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    难过
    2024-11-1 22:39
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    4

    主题

    18

    回帖

    0

    积分

    小白

    积分
    0
    发表于 2024-10-12 22:34 | 显示全部楼层
    BSC7 发表于 2024-10-12 22:33
    raise PythonZOSConnection.Exception("License is not valid for ZOSAPI use")           ^^^^^^^^^^^ ...

    要什么样的license?我这是19.4 premium
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2024-10-15 14:06
  • 签到天数: 60 天

    [LV.6]常住居民II

    17

    主题

    33

    回帖

    0

    积分

    小白

    积分
    0
     楼主| 发表于 2024-10-13 16:54 | 显示全部楼层
    本帖最后由 一人一小舟 于 2024-10-13 16:55 编辑
    BSC7 发表于 2024-10-12 22:34
    要什么样的license?我这是19.4 premium

    是zemax的交互扩展没打开导致,打开交互扩展,不关闭这个界面,再去python运行代码就可以了啊

    直接运行PYTHON ,不打开交互扩展就会报错,像下图一样:



    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?注册

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

    使用道具 举报

  • TA的每日心情
    难过
    2024-11-1 22:39
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    4

    主题

    18

    回帖

    0

    积分

    小白

    积分
    0
    发表于 2024-10-13 22:32 | 显示全部楼层
    一人一小舟 发表于 2024-10-13 16:54
    是zemax的交互扩展没打开导致,打开交互扩展,不关闭这个界面,再去python运行代码就可以了啊

    直接运行PY ...

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

    使用道具 举报

  • TA的每日心情

    2024-11-5 10:14
  • 签到天数: 22 天

    [LV.4]偶尔看看III

    15

    主题

    15

    回帖

    0

    积分

    小白

    积分
    0
    发表于 2024-10-28 13:45 | 显示全部楼层
    你好,我想问下元器件偏心是怎么操作的
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2024-10-15 14:06
  • 签到天数: 60 天

    [LV.6]常住居民II

    17

    主题

    33

    回帖

    0

    积分

    小白

    积分
    0
     楼主| 发表于 2024-10-28 14:46 | 显示全部楼层
    Kazami 发表于 2024-10-28 13:45
    你好,我想问下元器件偏心是怎么操作的

    和python交互的方式控制偏心我不知道啊,zemax里可以通过插入一个坐标间断点来控制
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    难过
    2024-11-4 21:25
  • 签到天数: 35 天

    [LV.5]常住居民I

    0

    主题

    11

    回帖

    0

    积分

    小白

    积分
    0
    发表于 2024-10-28 16:21 | 显示全部楼层
    通过Python控制Zemax的交互偏心控制,倾斜也同理

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?注册

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

    使用道具 举报

  • TA的每日心情
    无聊
    2024-10-28 20:20
  • 签到天数: 15 天

    [LV.4]偶尔看看III

    0

    主题

    1

    回帖

    0

    积分

    小白

    积分
    0
    发表于 2024-10-29 16:14 | 显示全部楼层
    我用帮助手册的Retrieve Data from FFT MTF 代码,发现设置参数这一栏有问题,修改参数对运行结果不产生影响。 我对比了楼主的代码,发现楼主代码多了行CastTo指令。运行楼主的代码时,也会报错。在ZEMAX自带的代码上修改之后还是运行失败。想问下应该怎么在PythonStandaloneApplication类代码上修改MTF参数。
    zemax代码:  
        # Settings
        newWin_Settings = newWin.GetSettings()
        newWin_Settings.MaximumFrequency = 50
        newWin_Settings.SampleSize = ZOSAPI.Analysis.SampleSizes.S_256x256
    楼主代码:
        newWin_Settings = newWin.GetSettings()
        newWin_SettingsCast = CastTo(newWin_Settings, 'IAS_FftMtf')
        newWin_SettingsCast.MaximumFrequency = 50
        newWin_SettingsCast.SampleSize = constants.SampleSizes_S_256x256
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2024-10-15 14:06
  • 签到天数: 60 天

    [LV.6]常住居民II

    17

    主题

    33

    回帖

    0

    积分

    小白

    积分
    0
     楼主| 发表于 2024-10-29 19:40 | 显示全部楼层
    xxxx 发表于 2024-10-29 16:14
    我用帮助手册的Retrieve Data from FFT MTF 代码,发现设置参数这一栏有问题,修改参数对运行结果不产生影 ...

    哪里报错呢,是不是plt那里数组维度不对,简单粗暴的方法是把color那里直接删除,
    就行了




    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?注册

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

    使用道具 举报

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

    本版积分规则

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

    GMT+8, 2024-11-6 09:28 , Processed in 0.109375 second(s), 22 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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