吾爱光设

 找回密码
 注册
会员须知
会员须知
实用帮助
实用帮助
查看: 1114|回复: 4

[求助] [已解决]内置宏rayrsi光线追迹误差问题

[复制链接]
  • TA的每日心情
    开心
    2024-9-12 11:12
  • 签到天数: 168 天

    [LV.7]常住居民III

    7

    主题

    15

    回帖

    2

    积分

    小白

    积分
    2
    发表于 2024-4-13 10:35 | 显示全部楼层 |阅读模式


    如图所示,这里设置了三面平面反射镜,视场角设置为(0,-9),(0,-12)和(0,-15)。想使用CV自带的宏函数rayrsi对对镜面上的光线位置坐标进行读取。这里想读取出像面面上(0,-9)视场主光线的位置。其使用的语法规则为 RAYRSI(zoom_pos, wave_num, field_num, ref_surf, ^input_array)。
    因此使用如下宏进行数据的读取 :
    num ^data(4)
    ^data(1)==0 ; ^data(2)==0 ; ^data(3)==0 ; ^data(4)==0.6
    ^ok == rayrsi(1,2,0,0,^data)
    ^y == (y g3 si)
    ^y的大小为 -80.3848,但是与绘图中现实的大小不同(不到80)


    当我们删除(0,-12)和(0,-15)视场,只保留(0,-9)视场,此时在对像面上主光线坐标读取,由于此时只有一个视场,因此相对视场y 中^data(4)由之前的0.6改为1

    num ^data(4)
    ^data(1)==0 ; ^data(2)==0 ; ^data(3)==0 ; ^data(4)==1
    ^ok == rayrsi(1,2,0,0,^data)
    ^y == (y g3 si)

    此时^y的大小为-79.1922,与绘图中显示的一致。
    请教各位这里的真实光线追迹结果的不同究竟是什么原因导致的?附上CV文件供各位测试。



    最佳答案
    2024-4-15 22:06
    zhuliwei12138 发表于 2024-4-15 20:11
    表示的时候如果使用光瞳上的参考光线(也就是R1..R5)和视场(F1..F3)追迹结果是准确的,但是我要获取光 ...

    确认问题在相对视场的定义上,物方角度的相对视场是按照tanθ进行定义的,0.6相对视场并非-9°这个视场,-9°对应的应该是tan(9°)/tan(15°)=0.591098……这个相对视场,看TANY就可以确认入射角是不是9°

    本帖子中包含更多资源

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

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

    使用道具 举报

  • TA的每日心情
    奋斗
    2024-11-23 00:15
  • 签到天数: 730 天

    [LV.9]以坛为家II

    10

    主题

    1280

    回帖

    647

    积分

    初级

    积分
    647
    发表于 2024-4-15 13:58 | 显示全部楼层
    后者的值是对的,问题可能出现在全局参考坐标,直接用局部坐标(Y R1 W1 SI F1 Z1)在两种情况下的值是一致的,均是 -79.1922
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-9-12 11:12
  • 签到天数: 168 天

    [LV.7]常住居民III

    7

    主题

    15

    回帖

    2

    积分

    小白

    积分
    2
     楼主| 发表于 2024-4-15 20:11 | 显示全部楼层
    dpstt 发表于 2024-4-15 13:58
    后者的值是对的,问题可能出现在全局参考坐标,直接用局部坐标(Y R1 W1 SI F1 Z1)在两种情况下的值是一致的 ...

    表示的时候如果使用光瞳上的参考光线(也就是R1..R5)和视场(F1..F3)追迹结果是准确的,但是我要获取光瞳上不同环臂位置上的点坐标(也就是说对全光瞳位置都进行采样),此时用F1..5无法表示全光瞳的位置,因此只能使用相对的光瞳坐标(就是是^data(4)中的参数),此时的追迹结果就会出现误差。所以感觉是CV这个内置宏函数有点问题。
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2024-11-23 00:15
  • 签到天数: 730 天

    [LV.9]以坛为家II

    10

    主题

    1280

    回帖

    647

    积分

    初级

    积分
    647
    发表于 2024-4-15 22:06 | 显示全部楼层    本楼为最佳答案   
    zhuliwei12138 发表于 2024-4-15 20:11
    表示的时候如果使用光瞳上的参考光线(也就是R1..R5)和视场(F1..F3)追迹结果是准确的,但是我要获取光 ...

    确认问题在相对视场的定义上,物方角度的相对视场是按照tanθ进行定义的,0.6相对视场并非-9°这个视场,-9°对应的应该是tan(9°)/tan(15°)=0.591098……这个相对视场,看TANY就可以确认入射角是不是9°

    本帖子中包含更多资源

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

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

    使用道具 举报

  • TA的每日心情
    开心
    2024-11-19 15:25
  • 签到天数: 47 天

    [LV.5]常住居民I

    1

    主题

    10

    回帖

    0

    积分

    小白

    积分
    0
    发表于 2024-5-15 15:33 | 显示全部楼层
    dpstt 发表于 2024-4-15 13:58
    后者的值是对的,问题可能出现在全局参考坐标,直接用局部坐标(Y R1 W1 SI F1 Z1)在两种情况下的值是一致的 ...

    像面上的话应该是S5吧
    发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
    回复

    使用道具 举报

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

    本版积分规则

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

    GMT+8, 2024-11-23 04:39 , Processed in 0.093750 second(s), 24 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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