📄 word.scr
字号:
dim wordnum% (1 to 30)
dim wordmirnum% (1 to 30)
dim wordname1$ (1 to 30)
dim wordname2$ (1 to 30)
wordcount%=0
wordint#=0.1
wordplace%=4
xianlu%=1
chenxin%=1
zhuhan%=2
jinsz%=0
chongz%=0
vcut%=0
dianc%=0
tany%=0
lanj%=0
workdel%=0
600
OpenForm #1,80,7,"加板边程序", character, okcancel
AddForm #1, 2, 0, "",choice, wordplace%, "左下X","左下Y","右下Y","左上X"
AddForm #1, 32, 0, "",choice, xianlu%, "感光线路","丝印线路"
AddForm #1, 50, 0, "",choice, chenxin%, "锣板","啤板","切板"
'AddForm #1, 50, 0, "",choice, no4, "镀铜锡","镀镍金"
AddForm #1, 32, 2, "",choice, zhuhan%, "感光阻焊","热固阻焊","UV油"
AddForm #1, 65, 0, "金手指", CHECK, jinsz%
AddForm #1, 65, 1, "重钻孔", CHECK, chongz%
AddForm #1, 65, 2, "V-CUT", CHECK, vcut%
AddForm #1, 65, 3, "电测试", CHECK, dianc%
AddForm #1, 65, 4, "碳油", CHECK, tany%
AddForm #1, 65, 5, "蓝胶", CHECK, lanj%
AddForm #1, 65, 6, "有删除", CHECK, workdel%
AddForm #1, 0, 5, "板编号",input,pcbno$,18
DisplayForm #1
Canceled% = formcancel(1)
DeleteForm #1
if Canceled% then goto 700
'决定生产流程
pcbno$=ucase$(ltrim$(rtrim$(pcbno$)))
boardtype$=mid$(pcbno$,3,2)
select case boardtype$
case "A1"
worditem$="1100131415001700000021000000250000002930"
diandu%=2
case "B1"
worditem$="1100130015001700000021220000250000002930"
penxi%=1
case "C1"
worditem$="1100130015001700000021220000250000002930"
penxi%=2
case "A2"
worditem$="1112131415001700000021000000250000002930"
diandu%=2
case "B2"
worditem$="1112131415161700000021220000250000002930"
diandu%=1
penxi%=1
case "C2"
worditem$="1112131415161700000021220000250000002930"
diandu%=1
penxi%=2
case "D2"
worditem$="1112131415161700000021220000250000002930"
diandu%=1
penxi%=1
jinsz%=1
case else
goto 600
end select
if jinsz% then
worditem$=mid$(worditem$,1,16)+"1920"+mid$(worditem$,21,12)+"27"+mid$(worditem$,35)
end if
if chongz% then
worditem$=mid$(worditem$,1,26)+"24"+mid$(worditem$,29)
end if
if vcut% then
worditem$=mid$(worditem$,1,30)+"26"+mid$(worditem$,33)
end if
if dianc% then
worditem$=mid$(worditem$,1,34)+"28"+mid$(worditem$,37)
end if
if tany% then
worditem$=mid$(worditem$,1,14)+"18"+mid$(worditem$,17)
end if
if lanj% then
worditem$=mid$(worditem$,1,24)+"23"+mid$(worditem$,27)
end if
wordsel$="00000000000000000000"
wordsel$=mid$(wordsel$,1,2)+ltrim$(rtrim$(str$(xianlu%)))+mid$(wordsel$,4)
wordsel$=mid$(wordsel$,1,3)+ltrim$(rtrim$(str$(diandu%)))+mid$(wordsel$,5)
wordsel$=mid$(wordsel$,1,6)+ltrim$(rtrim$(str$(zhuhan%)))+mid$(wordsel$,8)
wordsel$=mid$(wordsel$,1,11)+ltrim$(rtrim$(str$(penxi%)))+mid$(wordsel$,13)
wordsel$=mid$(wordsel$,1,14)+ltrim$(rtrim$(str$(chenxin%)))+mid$(wordsel$,16)
lib_setextlib@ 1,1,1,"c:\ACT_60\scripts\work.clb"
set_caplib@ 1
'预览并修改流程
select case wordplace%
case 1
wordxy%=1
case 2
wordxy%=2
case 3
wordxy%=2
case 4
wordxy%=1
end select
jt1%=blankdcode!
edit_aperture@ blankdcode!,6,0,0,blankdcode!,"jt"+ltrim$(rtrim$(str$(wordxy%)))
setdcode@ jt1%
jtsize#=dcodesizex!
for t=1 to len(worditem$)/2
tmpitem$=mid$(worditem$,t*2-1,2)
if tmpitem$<>"00" then
if mid$(wordsel$,t,1)<>"0" then
tmpsel$=mid$(wordsel$,t,1)
else
tmpsel$=""
end if
wordcount%=wordcount%+1
wordnum%(wordcount%)=blankdcode!
wordname1$(wordcount%)="nc"+tmpitem$+tmpsel$+ltrim$(rtrim$(str$(wordxy%)))
wordname2$(wordcount%)="nc"+tmpitem$+tmpsel$+ltrim$(rtrim$(str$(wordxy%+2)))
edit_aperture@ blankdcode!,6,0,0,blankdcode!,"nc"+tmpitem$+tmpsel$+ltrim$(rtrim$(str$(1)))
end if
next
update_dcodebar@
varx#=0
vary#=0
if workdel% then
setlayer@ Blanklayer!
tmplyr%=Blanklayer!
setdcode@ wordnum%(1)
tmpwidth#=Dcodesizex!
add_flash@
axy@ varx#,vary#
back@
wordwidth#=0
for t=2 to wordcount%
setdcode@ jt1%
wordsize#=Dcodesizex!
wordwidth#=wordwidth#+wordsize#/2+tmpwidth#/2+wordint#
tmpwidth#=Dcodesizex!
add_flash@
axy@ varx#+wordwidth#,vary#
back@
setdcode@ wordnum%(t)
wordsize#=Dcodesizex!
wordwidth#=wordwidth#+wordsize#/2+tmpwidth#/2+wordint#
tmpwidth#=Dcodesizex!
add_flash@
axy@ varx#+wordwidth#,vary#
back@
next
layer_alloff@ 1
view_all@
edit_delete@
suspend "请删除不必要工序"
aptable_remunused@
edit_removelyr@ tmplyr%
end if
'根据修改的流程重新定义D码
tmp%=wordcount%
wordcount%=0
wordlong#=0
select case wordplace%
case 1
varx#=0
vary#=0
uselong#=50
case 2
varx#=0
vary#=0
uselong#=50
case 3
varx#=0
vary#=0
uselong#=50
case 4
varx#=0
vary#=0
uselong#=50
end select
flag%=0
for t=1 to tmp%
setdcode@ wordnum%(t)
if dcodeshape!<>0 then
wordcount%=wordcount%+1
wordnum%(wordcount%)=wordnum%(t)
wordname1$(wordcount%)=wordname1$(t)
wordname2$(wordcount%)=wordname2$(t)
if wordxy%=1 then
if wordcount%=1 then
wordlong#=wordlong#+dcodesizex!/2+wordint#
else
wordlong#=wordlong#+jtsize#+wordint#
if uselong#-wordlong#-3<jtsize#/2 and flag%=0 then
wordlong#=wordlong#+jtsize#+6
flag%=1
end if
wordlong#=wordlong#+dcodesizex!+wordint#
if uselong#-wordlong#-3<dcodesizex!/2 and flag%=0 then
wordlong#=wordlong#+dcodesizex!+6
flag%=1
end if
end if
end if
end if
next
'wordlong#=wordlong#+(jtsize#+wordint#)*(wordcount%-1)-wordint#
if wordxy%=1 then
setdcode@ wordnum%(1)
size1#=dcodesizex!
setdcode@ wordnum%(wordcount%)
size2#=dcodesizex!
size1#=size1#-size2#
wordlong#=wordlong#-size1#-size2#/2-wordint#
end if
'suspend ""
aptable_remunused@
jt1%=blankdcode!
edit_aperture@ blankdcode!,6,0,0,blankdcode!,"jt"+ltrim$(rtrim$(str$(wordxy%)))
jt2%=blankdcode!
edit_aperture@ blankdcode!,6,0,0,blankdcode!,"jt"+ltrim$(rtrim$(str$(wordxy%+2)))
for t=1 to wordcount%
wordnum%(t)=blankdcode!
edit_aperture@ blankdcode!,6,0,0,blankdcode!,wordname1$(t)
wordmirnum%(t)=blankdcode!
edit_aperture@ blankdcode!,6,0,0,blankdcode!,wordname2$(t)
next
update_dcodebar@
'加工艺流程
'for
wordmir%=1
flag%=0
setlayer@ Blanklayer!
if wordxy%=1 then
if wordmir% then
setdcode@ wordmirnum%(1)
tmpwidth#=Dcodesizex!
add_flash@
axy@ varx#+wordlong#,vary#
back@
else
setdcode@ wordnum%(1)
tmpwidth#=Dcodesizex!
add_flash@
axy@ varx#,vary#
back@
end if
else
if wordmir% then
setdcode@ wordmirnum%(1)
tmpwidth#=Dcodesizey!
add_flash@
axy@ varx#,vary#
back@
else
setdcode@ wordnum%(1)
tmpwidth#=Dcodesizey!
add_flash@
axy@ varx#,vary#
back@
end if
end if
wordwidth#=0
for t=2 to wordcount%
if wordxy%=1 then
if wordmir% then
setdcode@ wordmirnum%(t)
setdcode@ jt2%
wordsize#=Dcodesizex!
wordwidth#=wordwidth#+wordsize#/2+tmpwidth#/2+wordint#
if wordlong#-uselong#-3-wordwidth#<wordsize#/2 and flag%=0 then
wordwidth#=wordwidth#+6+wordsize#
flag%=1
end if
tmpwidth#=Dcodesizex!
add_flash@
axy@ varx#+wordlong#-wordwidth#,vary#
back@
setdcode@ wordmirnum%(t)
wordsize#=Dcodesizex!
wordwidth#=wordwidth#+wordsize#/2+tmpwidth#/2+wordint#
if wordlong#-uselong#-3-wordwidth#<wordsize#/2 and flag%=0 then
wordwidth#=wordwidth#+6+wordsize#
flag%=1
end if
tmpwidth#=Dcodesizex!
add_flash@
axy@ varx#+wordlong#-wordwidth#,vary#
back@
else
setdcode@ wordnum%(t)
setdcode@ jt1%
wordsize#=Dcodesizex!
wordwidth#=wordwidth#+wordsize#/2+tmpwidth#/2+wordint#
if uselong#-3-wordwidth#<wordsize#/2 and flag%=0 then
wordwidth#=wordwidth#+6+wordsize#
flag%=1
end if
tmpwidth#=Dcodesizex!
add_flash@
axy@ varx#+wordwidth#,vary#
back@
setdcode@ wordnum%(t)
wordsize#=Dcodesizex!
wordwidth#=wordwidth#+wordsize#/2+tmpwidth#/2+wordint#
if uselong#-3-wordwidth#<wordsize#/2 and flag%=0 then
wordwidth#=wordwidth#+6+wordsize#
flag%=1
end if
tmpwidth#=Dcodesizex!
add_flash@
axy@ varx#+wordwidth#,vary#
back@
end if
else
if wordmir% then
setdcode@ wordmirnum%(t)
setdcode@ jt2%
wordsize#=Dcodesizey!
wordwidth#=wordwidth#+wordsize#/2+tmpwidth#/2+wordint#
if uselong#-3-wordwidth#<wordsize#/2 and flag%=0 then
wordwidth#=wordwidth#+6+wordsize#
flag%=1
end if
tmpwidth#=Dcodesizey!
add_flash@
axy@ varx#,vary#+wordwidth#
back@
setdcode@ wordmirnum%(t)
wordsize#=Dcodesizey!
wordwidth#=wordwidth#+wordsize#/2+tmpwidth#/2+wordint#
if uselong#-3-wordwidth#<wordsize#/2 and flag%=0 then
wordwidth#=wordwidth#+6+wordsize#
flag%=1
end if
tmpwidth#=Dcodesizey!
add_flash@
axy@ varx#,vary#+wordwidth#
back@
else
setdcode@ wordnum%(t)
setdcode@ jt1%
wordsize#=Dcodesizey!
wordwidth#=wordwidth#+wordsize#/2+tmpwidth#/2+wordint#
if uselong#-3-wordwidth#<wordsize#/2 and flag%=0 then
wordwidth#=wordwidth#+6+wordsize#
flag%=1
end if
tmpwidth#=Dcodesizey!
add_flash@
axy@ varx#,vary#+wordwidth#
back@
setdcode@ wordnum%(t)
wordsize#=Dcodesizey!
wordwidth#=wordwidth#+wordsize#/2+tmpwidth#/2+wordint#
if uselong#-3-wordwidth#<wordsize#/2 and flag%=0 then
wordwidth#=wordwidth#+6+wordsize#
flag%=1
end if
tmpwidth#=Dcodesizey!
add_flash@
axy@ varx#,vary#+wordwidth#
back@
end if
end if
next
'next
700
tmp%=blankdcode!
edit_aperture@ blankdcode!,1,0.1,0.1,blankdcode!,""
explode_custom@
edit_selectall2@
explode_FillCustPoly@ tmp%
aptable_remunused@
aptable_compress@
layer_alloff@ 0
view_all@
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -