查看: 10731|回复: 51

[分享]变焦曲线绘图的宏

[复制链接]
发表于 2003-9-8 21:36:00 | 显示全部楼层 |阅读模式
[300]! purpose: This macro to plot zoom curv.
!     The max zoom position is 6, if more ,it will not work correctly
! author: Doffery   8-sep-2003


lcl num ^i ^efl(200) ^t(6,200)
lcl str ^command ^th(6)
ver y
out no
! Active all zoom positions
pos

^numZ == (num z)
^command == ’LIN ’
for ^i 1 ^numZ
^tempstr == num_to_str(^i)
^tempstr == concat(concat(’(’, concat(’EFL Z’,^tempstr)),’) ’)
^command == concat(^command,^tempstr)
end for

BUF DEL B0
BUF
OUT y
cam&#59; ncs 200          ! number of cam steps
$command            !LIN (EFL z1) (EFL z2) (EFL z3) ! make linear in EFL
LLA ’EFL’
go
OUT YES
BUF NO  ! CAM data is now in B0 buffer for later use


! Move to start of buffer and find column-head row
BUF MOV I1
^count == 0 ! num of positions
BUF FND THI
lbl FIND
if (buf.fnd)
^count == ^count +1
BUF FND
got FIND
end if

BUF MOV I1
BUF FND AND EFL THI

for ^i 1 ^count
buf mov ic jc+1
if (buf.type ic jc) = STR
  if (buf.str ic jc) = THI
    buf mov ic jc+1
  end if
  ^th(^i) == (buf.str ic jc)
  !^count == ^count +1
  if lenstr(^th(^i))  3
  ^th(^i) == substr(^th(^i),4,lenstr(^th(^i)))
   end if
end if
end for


BUF MOV Ic+1 J1       ! skip blank line

write Getting zoom data from CAM table in BUF B0 -- please wait...
OUT n

for ^i 1 200    ! saving into arrays first will speed update
BUF MOV Ic+1 J1
if not ((buf.type Ic Jc+1) =NUM)
BUF MOV Ic+1 J1
end if
^efl(^i) == (BUF.NUM Ic Jc+1)
if ((buf.type ic Jc+2) =NUM)
^t(1,^i) == (BUF.NUM Ic Jc+2)
end if
if ((buf.type ic Jc+3) =NUM)
^t(2,^i) == (BUF.NUM Ic Jc+3)
end if
if ((buf.type ic Jc+4) =NUM)
^t(3,^i) == (BUF.NUM Ic Jc+4)
end if
if ((buf.type ic Jc+5) =NUM)
^t(4,^i) == (BUF.NUM Ic Jc+5)
end if
if ((buf.type ic Jc+6) =NUM)
^t(5,^i) == (BUF.NUM Ic Jc+6)
end if
if ((buf.type ic Jc+7) =NUM)
^t(6,^i) == (BUF.NUM Ic Jc+7)
end if
end for

OUT n
BUF DEL B0

ugr
xla FOCAL LENGTH(mm)
xde 1
yla ZOOM POSITION
yde 2
tit ’ZOOM position vs. EFL’

for ^i 1 ^count

dpo concat(’THI ’,^th(^i))
spl pnt ^i
for ^J 1 200
^efl(^J) ^t(^i,^J)
end for
end
end for
go

发表于 2003-9-15 21:35:00 | 显示全部楼层

[分享]变焦曲线绘图的宏

thanks
发表于 2003-9-16 01:10:00 | 显示全部楼层

[分享]变焦曲线绘图的宏

CODE V没有中文手册。
发表于 2003-9-30 03:56:00 | 显示全部楼层

[分享]变焦曲线绘图的宏

请dfjss给我email这个变焦曲线绘图的宏,非常感谢!lens_yang@163.com
 楼主| 发表于 2003-9-30 04:01:00 | 显示全部楼层

[分享]变焦曲线绘图的宏

想要的话就买吧,如果你有什么问题可以问的,但是宏是要买的。呵呵。
发表于 2003-9-30 04:49:00 | 显示全部楼层

[分享]变焦曲线绘图的宏

女士是不是可以便宜一点点???:)
 楼主| 发表于 2003-9-30 15:46:00 | 显示全部楼层

[分享]变焦曲线绘图的宏

真正需要的人是不计较这一点付出的,况不是正的货币。
这个宏是物有所值的。也花了我不少时间,这点付出,理应有一点“回报”!
我并不是一定要收钱不可的,只是想知道有多少人是需要的。
因为最近搞变焦镜头的设计的人越来越多了,所以我才有兴趣写这个宏。
目前该宏是采用插值方法计算的,所以你要有足够的采样点,才能够精确。
作这个宏,只是让你在设计的过程中对你的变焦曲线的情况有个比较直观的感觉。
有助于你调整各个位置的距离。
若想得到真正的变焦曲线(对应了每个真实焦点的位置)只需在此宏上修改即可完成,当然你必需会用CV的CAM DESIGN(凸轮设计)。它提供了两种方法来设计变焦曲线,我用的是其中的一种。
如果你真的是一个学习者,这个宏应该是很适合你的!
发表于 2003-10-1 04:39:00 | 显示全部楼层

[分享]变焦曲线绘图的宏

我刚挣够了300,现在全部给你。谢谢!
发表于 2003-10-12 16:59:00 | 显示全部楼层

[分享]变焦曲线绘图的宏

  我在日本过来的镜头里看过,可以看懂,但是我没有这个软件,那就是白说了。我当时以为日本人是用excel 作出来的。现在听你们一说我就知道是这么一回事,感谢各位大虾。
发表于 2003-10-14 17:20:00 | 显示全部楼层

[分享]变焦曲线绘图的宏

我现在有个变焦结构,请具体讲讲该怎么用这个宏??
 楼主| 发表于 2003-10-14 17:49:00 | 显示全部楼层

[分享]变焦曲线绘图的宏

直接运行这个宏即可. in 路径:\你保存的宏的文件名(后缀为SEQ)
发表于 2003-10-18 00:39:00 | 显示全部楼层

[分享]变焦曲线绘图的宏

不错,就是觉得有点儿贵
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注公众号

相关侵权、举报、投诉及建议等,请发 E-mail:admin@discuz.vip

Powered by Discuz! X5.0 Licensed © 2001-2026 Discuz! Team.|鄂ICP备17021725号-1

在本版发帖
关注公众号
QQ客服返回顶部