diff --git a/ats/scott_test/analysis_test.js b/ats/scott_test/analysis_test.js index 648d2d4dfd136f25b734f5000d94b6be57b9ce7f..d602c7b3b37ad4760d49f0e03468e7a265aee96c 100644 --- a/ats/scott_test/analysis_test.js +++ b/ats/scott_test/analysis_test.js @@ -158,6 +158,7 @@ try { GEN.COM("sel_change_atr,mode=add") } } + GEN.deleteLayer({job:job,layer:[tmp_layer]}) } } }) @@ -249,7 +250,7 @@ try { } else { GEN.clearLayers() GEN.workLayer({name:drill.odb_name,display_number:2,clear_before:'yes'}) - GEN.selectByFilter({attribute:[{attribute:".drill",option:"plated"}],profile:"in"}) + GEN.selectByFilter({attribute:[{attribute:".drill",option:"plated"}]}) if(GEN.getSelectCount()>0){ GEN.selClearFeature() drill_info.drl_type = "PTH" @@ -263,8 +264,16 @@ try { drill_info.drl_filler = drl_filler drill_info.drl_zones = "{A}" cam_drill_structure.push(drill_info) - // save_stack_info({info:drill_info}) }) + var is_via_filling = cam_drill_structure.filter(function(v){return v.drl_filler == "Via Filling"}) + if(is_via_filling.length>0){ + cam_drill_structure = cam_drill_structure.map(function(item){ + if(item.drl_type=="Laser" && item.drl_filler=="None"){ + item.drl_filler = "Via Filling" + } + return item + }) + } save_job_info({ jobid: JobId, jobinfohash: {cam_drill_structure: JSON.stringify(cam_drill_structure)} @@ -456,7 +465,8 @@ try { if(pcs_steps.length > 0){ pcs_steps.forEach(function(step){ if(!GEN.isLayerEmpty({job:job,step:step,layer:layer})){ - var tool = GEN.getTool({job:job,step:step,layer:layer,units:"mm"}); + GEN.COM("tools_set,layer="+layer+",slots=by_length") + var tool = GEN.getTool({job:job,step:step,layer:layer,units:"mm",}); if(drill_tool_info[layer]){ Object.keys(tool).forEach(function(hashkey){ if(drill_tool_info[layer][hashkey]){ @@ -476,23 +486,25 @@ try { } if(arr_steps.length > 0){ arr_steps.forEach(function(step){ - if(!GEN.isLayerEmpty({job:job,step:step,layer:layer})){ - var tool = GEN.getTool({job:job,step:step,layer:layer,units:"mm"}); - if(drill_tool_info[layer]){ - Object.keys(tool).forEach(function(hashkey){ - if(drill_tool_info[layer][hashkey]){ - if(!drill_tool_info[layer][hashkey].array_count){drill_tool_info[layer][hashkey].array_count = 0} - drill_tool_info[layer][hashkey].array_count += Number(tool[hashkey].count) ; - } - }) - }else{ - drill_tool_info[layer] = tool ; - Object.keys(tool).forEach(function(hashkey){ - if(!drill_tool_info[layer][hashkey].array_count){drill_tool_info[layer][hashkey].array_count = 0} - drill_tool_info[layer][hashkey].array_count += Number(tool[hashkey].count) ; - }) - } - } + if(GEN.isStepExists({job:job,step:step})){ + if(!GEN.isLayerEmpty({job:job,step:step,layer:layer})){ + var tool = GEN.getTool({job:job,step:step,layer:layer,units:"mm"}); + if(drill_tool_info[layer]){ + Object.keys(tool).forEach(function(hashkey){ + if(drill_tool_info[layer][hashkey]){ + if(!drill_tool_info[layer][hashkey].array_count){drill_tool_info[layer][hashkey].array_count = 0} + drill_tool_info[layer][hashkey].array_count += Number(tool[hashkey].count) ; + } + }) + }else{ + drill_tool_info[layer] = tool ; + Object.keys(tool).forEach(function(hashkey){ + if(!drill_tool_info[layer][hashkey].array_count){drill_tool_info[layer][hashkey].array_count = 0} + drill_tool_info[layer][hashkey].array_count += Number(tool[hashkey].count) ; + }) + } + } + } }) } }) @@ -503,6 +515,7 @@ try { where:{job_id:JobId} }) }); + var seq_index = 1 ; Object.keys(drill_tool_info).forEach(function(layer){ var datalist = [] @@ -557,6 +570,7 @@ try { }) console.log("=============================> 6 set smd bga") + var allStep = GEN.getStepList({job:job}) allStep.forEach(function(step){ GEN.openStep({job:job,name:step}) @@ -615,7 +629,6 @@ try { }) GEN.closeStep() }) - // GEN.createChklist() console.log("============= ===============> 6 analysis smd") // smd @@ -630,7 +643,6 @@ try { console.log("===================================> 7 bga info") var bgaInfo; bgaInfo = bgaAnalysis({job:job,steplist:[pcs_step],layers:analysis_obj.matrixInfo.mOuters,attr:".bga"}) - console.log("========================bgaInfo:" + _.toString(bgaInfo)); // ä¿å˜ console.log("============== =====================> 8 save bga smd info") @@ -688,8 +700,6 @@ try { GEN.closeStep() } }) - - var info = { min_line_width: ["line","user_nor_line"], min_line_spacing: ["l2l"], @@ -1415,7 +1425,7 @@ function analysis(props){ GEN.closeStep() return res } - T_m_p.prototype.analysis_vc_src_EDGE_PLATING = function(props){ // ? 检查线路外形是å¦å˜åœ¨ç‰©ä»¶ï¼Œå˜åœ¨åˆ™å˜yes + T_m_p.prototype.analysis_vc_src_EDGE_PLATING = function(props){ var res = "no" var rout = this.matrixInfo.matrixVal.filter(function(v){return v.layer_type == "rout"}) // 找rout层 if(rout.length == 0){ @@ -1986,19 +1996,24 @@ function all_bga_min_pitch_anal(props){ // åˆ†æžæ‰€æœ‰bgaä¸é—´è·æœ€å°çš„ GEN.workLayer({name:tmp_layer,display_number:1,clear_before:'yes'}); // èŽ·å–æœ€å°bgaé—´è· var features = GEN.getFeatures({job:job,step:step,layer:tmp_layer}) - var tmp = features.map(function(v){ - var num = Math.sqrt((v.xe-v.xs)*(v.xe-v.xs) + (v.ye-v.ys)*(v.ye-v.ys))*1000 - return {num:num.toFixed(4),symbol:v.symbol} - }) - var bga_min_pitch = tmp.sort(function(a,b){return a-b})[0] - res.bga_min_pitch = bga_min_pitch.num + if(features && features.length){ + var tmp = features.map(function(v){ + var num = Math.sqrt((v.xe-v.xs)*(v.xe-v.xs) + (v.ye-v.ys)*(v.ye-v.ys))*1000 + return {num:num.toFixed(4),symbol:v.symbol} + }) + var bga_min_pitch = tmp.sort(function(a,b){return a-b})[0] + res.bga_min_pitch = bga_min_pitch.num + // pitch ä¸é€‰æœ€å°çš„ + GEN.selClearFeature() + GEN.COM("filter_set,filter_name=popup,update_popup=no,profile=in") + GEN.COM("filter_set,filter_name=popup,update_popup=yes,slot=line,slot_by=length,min_len=0,max_len="+(bga_min_pitch.num/1000)+0.0002) + GEN.COM("filter_area_strt") + GEN.COM("filter_area_end,layer=,filter_name=popup,operation=select,area_type=none,inside_area=no,intersect_area=no") + GEN.COM("filter_reset,filter_name=popup") + } // 所有BGAä¸é—´è·æœ€å°çš„PADå¤§å° - GEN.selClearFeature() - GEN.selectByFilter({include_syms:bga_min_pitch.symbol}) - var min_pitch_layer = tmp_layer + "_min" selCopyLayer({job:job,layer:min_pitch_layer}) - GEN.workLayer({name:layer,display_number:1,clear_before:'yes'}); GEN.selClearFeature() GEN.selRefFeat({layers:min_pitch_layer,use:'filter',mode:'touch'}) @@ -2007,8 +2022,12 @@ function all_bga_min_pitch_anal(props){ // åˆ†æžæ‰€æœ‰bgaä¸é—´è·æœ€å°çš„ GEN.workLayer({name:min_pad_layer,display_number:1,clear_before:'yes'}); var min_pad_symbols = GEN.getLayerSymsHist({job:job,layer:min_pad_layer,step:step}) var min_pad_symbol = _.values(min_pad_symbols).sort(function(a,b){return Number(a.size)-Number(b.size)})[0] + // åˆ é™¤éžæœ€å°çš„ + GEN.selectByFilter({include_syms:min_pad_symbol.symbol}) + GEN.selReverse() + if(GEN.getSelectCount()>0){GEN.selDelete()} res.bga_min_pitch_pad_size = min_pad_symbol.size - res.bga_min_pitch = res.bga_min_pitch - 0 + (min_pad_symbol.size-0) + res.bga_min_pitch = (res.bga_min_pitch || 20) - 0 + (min_pad_symbol.size-0) if(solder_layer){ // 最å°pitchå¼€çª—å¤§å° GEN.workLayer({name:solder_layer,display_number:1,clear_before:'yes'}); @@ -2120,34 +2139,39 @@ function bgaPitch(props){ GEN.COM("chklist_create_lyrs,chklist="+ck+",severity=3,suffix=pitch"); GEN.workLayer({name:tmp_layer2,display_number:1,clear_before:'yes'}); GEN.selectByFilter({attribute:[{attribute:".string",text:"p2p"}]}) - - GEN.saveJob({job:job}) - var tmp_layer = tmp_layer2 + "_tmp" selCopyLayer({job:job,layer:tmp_layer}) GEN.workLayer({name:tmp_layer,display_number:1,clear_before:'yes'}); - // var symbollists = GEN.getLayerSymsHist({job:job,step:step,layer:tmp_layer}) - // var sys = Object.keys(symbollists) - // if(sys.length > 1){ - // sys = sys.sort(function(a,b){return symbollists[a].size - symbollists[b].size}) - // // todo 如何找到线è·ç¦»æœ€å°çš„pad åˆ é™¤å…¶ä»–çš„ - // } var features = GEN.getFeatures({job:job,step:step,layer:tmp_layer}) + var res if(features && features.length){ var tmp = features.map(function(v){ var num = Math.sqrt((v.xe-v.xs)*(v.xe-v.xs) + (v.ye-v.ys)*(v.ye-v.ys))*1000 return num.toFixed(4) }) - var res = tmp.sort(function(a,b){return a-b})[0] - return res + res = tmp.sort(function(a,b){return a-b})[0] + } + if (res) { + // 过滤掉pitch䏿˜¯æœ€å°çš„线 + GEN.COM("filter_set,filter_name=popup,update_popup=no,profile=in") + GEN.COM("filter_set,filter_name=popup,update_popup=yes,slot=line,slot_by=length,min_len=0,max_len="+(res/1000)+0.0002) + GEN.COM("filter_area_strt") + GEN.COM("filter_area_end,layer=,filter_name=popup,operation=select,area_type=none,inside_area=no,intersect_area=no") + GEN.COM("filter_reset,filter_name=popup") + GEN.selReverse() + if(GEN.getSelectCount()>0){GEN.selDelete()} + GEN.workLayer({name:layer,display_number:1,clear_before:'yes'}); + GEN.selRefFeat({layers:tmp_layer,use:'filter',mode:'touch'}) + GEN.selReverse() + if(GEN.getSelectCount()>0){GEN.selDelete()} } GEN.deleteLayer({job:job,layer:tmp_layer}) GEN.deleteLayer({job:job,layer:tmp_layer1}) GEN.deleteLayer({job:job,layer:tmp_layer2}) // 矩阵 + return res || 20.1 } - function myFixed(str, num) { if(/^[1-9][0-9]*([.][0-9]+)?$/.test(str)){ return Number(str).toFixed(num) diff --git a/ats/scott_test/input_test.js b/ats/scott_test/input_test.js index cc5657853a6334aab8c259967d4be873f0209201..37b09f3e4d9332fd359466752787b629e27c93e1 100644 --- a/ats/scott_test/input_test.js +++ b/ats/scott_test/input_test.js @@ -130,12 +130,18 @@ try { if(!fs.exists(path)){throw "path error"} var pathInfo = fs.listDir(path + "/" + db_customer.toLowerCase(), 1) // 判æ–å˜ä¸å˜åœ¨æ–™å·æ–‡ä»¶ + // var vc_position = db.query("",function(q){ + // return q.selectValue({ + // table:'pdm_job', + // field:'version', + // where:{id : JobId} + // }) + // }); var job_file_baseName = job // if(vc_position && vc_position != "" && !(/null/ig.test(vc_position))){ // job_file_baseName = job_file_baseName + "_" + vc_position // } var jobFile = pathInfo.filter(function(v){return v.baseName.toLowerCase() == job_file_baseName}) - if(jobFile.length == 0){throw "job file is not exist"} var jobFiles = [] // 记录è¦åˆ†æžçš„æ–‡ä»¶ if (!jobFile[0].isDir) { @@ -143,13 +149,17 @@ try { } else { jobFiles = fs.listDir(jobFile[0].path) } + GEN.COM("config_edit,name=iol_gbr_polygon_break,value=1,mode=user") + GEN.COM("config_edit,name=iol_fix_ill_polygon,value=yes,mode=user") // åˆ†æžæ–™å·æ–‡ä»¶ 得到料å·å¯¼å…¥ä¿¡æ¯ 导入类型 var jobInfo = analyJobFiles({jobFiles:jobFiles.filter(function(v){return v.isFile}),custCfg:custCfg,config:config,job:job }) if(jobInfo.data.length == 0){throw "file error"} var importOk = false; // æ˜¯å¦æˆåŠŸå¯¼å…¥ if(/odb/ig.test(jobInfo.type)){ // odb导入 + fs.writeFile("./tmp.js",_.toString(jobInfo.data)) if(jobInfo.data.length == 1){ // åªåˆ†æžåˆ°ä¸€ä¸ªtgz文件 直接导入 - console.log("========= import one ====>path:"+ _.toString(jobInfo.data)) // ? tmp + resultData.push( {type: "info", title: "读å–"+jobInfo.data[0].file.name, + detail: [{desc: _.toString({format:"odb++",date:now(),user:$.user_name})}]}) var err = importJob({name:job,db:custCfg.db,path:jobInfo.data[0].file.path},config.delSameJob) if(err){throw err} } else { // 多个tgz文件 说明需è¦åˆå¹¶ @@ -158,6 +168,8 @@ try { var path = item.file.path var tmp_job_name = job + "_tmp_" + i var err = importJob({name:tmp_job_name,db:custCfg.db,path:path},config.delSameJob) + resultData.push( {type: "info", title: "读å–"+item.file.name, + detail: [{desc: _.toString({format:"odb++",date:now(),user:$.user_name})}]}) if(err){throw err} return { name:tmp_job_name, @@ -230,6 +242,8 @@ try { }) GEN.COM("input_manual_reset") gerberInfo.forEach(function(v){ + resultData.push( {type: "info", title: "读å–"+v.layer, + detail: [{desc: _.toString({format:v.format,date:now(),user:$.user_name})}]}) GEN.COM("input_manual_set",v) }) GEN.COM("input_manual") @@ -379,3 +393,11 @@ function getStepType(step){ } return pcs } + +function now(){ + var date = new Date() + var time = _.toString(date) + res1 = /\d{4}-\d{2}-\d{2}/.exec(time) + res2 = /\d{2}:\d{2}:\d{2}/.exec(time) + return res1 + " " +res2 +} \ No newline at end of file diff --git a/config_ats.js b/config_ats.js index 33ec0abbf71c0a68bc69bb705cb9ca9ce04cad4b..8c7c29fd415cf6ab6429f9dc57ed14ef180b0a41 100644 --- a/config_ats.js +++ b/config_ats.js @@ -187,8 +187,8 @@ "text_line_width": 0.0024 }, "Excellon2_5": { - "nf1": 3, - "nf2": 2, + "nf1": 2, + "nf2": 3, "units": "mm", "zeroes": "leading", "decimal": "no", @@ -207,7 +207,7 @@ "text_line_width": 0.0024 }, "Excellon2_6": { - "nf1": 2, + "nf1": 3, "nf2": 4, "units": "mm", "zeroes": "leading", @@ -525,16 +525,16 @@ } ], "tl_name": [ - {"orig_name" : ["assytop.art","past_top"], "tl_name" : "past_top" }, - {"orig_name" : ["assybot.art","past_botm"], "tl_name" : "past_botm" }, - {"orig_name" : ["pleg.art","^ss_top","silk_top"], "tl_name" : "silk_top" }, - {"orig_name" : ["sleg.art","^ss_bot","silk_bot"], "tl_name" : "silk_bot" }, - {"orig_name" : ["ssm.art","sm_top"], "tl_name" : "sm_top" }, - {"orig_name" : ["psm.art","sm_bot"], "tl_name" : "sm_botm" }, + {"orig_name" : ["assytop\\.art","past_top"], "tl_name" : "past_top" }, + {"orig_name" : ["assybot\\.art","past_botm"], "tl_name" : "past_botm" }, + {"orig_name" : ["pleg\\.art","^ss_top","silk_top"], "tl_name" : "silk_top" }, + {"orig_name" : ["sleg\\.art","^ss_bot","silk_bot"], "tl_name" : "silk_bot" }, + {"orig_name" : ["ssm\\.art","sm_top"], "tl_name" : "sm_top" }, + {"orig_name" : ["psm\\.art","sm_bot"], "tl_name" : "sm_botm" }, {"orig_name" : ["^top$","^top.art$"], "tl_name" : "top" }, - {"orig_name" : ["^0(\\d+).*ccp_ms","^s(\\d+)\.art","lay(\\d+)\\.art","layer_(\\d+)"], "tl_name" : "l_($1)"}, - {"orig_name" : ["^bottom$","^bottom.art$"], "tl_name" : "bottom" }, - {"orig_name" : ["-(\\d+)-(\\d+)\.drl$","(\\d+)-(\\d+)-laser\.drl$","d(\\d+)-(\\d+)"], "tl_name" : "d_($1)-($2)"}, + {"orig_name" : ["^0(\\d+).*ccp_ms","^s(\\d+)\\.art","lay(\\d+)\\.art","layer_(\\d+)"], "tl_name" : "l_($1)"}, + {"orig_name" : ["^bottom$","^bottom\\.art$"], "tl_name" : "bottom" }, + {"orig_name" : ["-(\\d+)-(\\d+)\\.drl$","(\\d+)-(\\d+)-laser\\.drl$","d(\\d+)-(\\d+)"], "tl_name" : "d_($1)-($2)"}, {"orig_name" : ["\\.rou$","^rout$"], "tl_name" : "rout" }, {"orig_name" : "fab.art", "tl_name" : "fab.art" }, {"orig_name" : ["multipack.art","^array$"], "tl_name" : "array" }, @@ -647,16 +647,16 @@ ], "tl_name": [ {"orig_name" : ["pasttop.art","^past_top$","top_solderpaste"], "tl_name" : "past_top" }, - {"orig_name" : ["^silk_top\\.art$","pleg.art","^silk_top$","top_silkscreen"], "tl_name" : "silk_top" }, + {"orig_name" : ["^silk_top\\.art$","pleg\\.art","^silk_top$","top_silkscreen"], "tl_name" : "silk_top" }, {"orig_name" : ["_r1\\.phd$","_r1\\.fph$","^smt\\.art$","soldtop.art","^sm_top$","top_soldermask"], "tl_name" : "sm_top" }, - {"orig_name" : ["^top.art$","^top$"], "tl_name" : "top" }, + {"orig_name" : ["^top\\.art$","^top$"], "tl_name" : "top" }, {"orig_name" : ["_l(\\d+)\\.phd$","_l(\\d+)\\.fph$","^in_(\\d+)\\.art$","^l(\\d+)\\.art$","inner_(\\d+)\\.art","layer_(\\d+)"], "tl_name" : "l_($1)"}, - {"orig_name" : ["^bot.art$","^bottom.art","^bottom$"], "tl_name" : "bottom" }, + {"orig_name" : ["^bot\\.art$","^bottom\\.art","^bottom$"], "tl_name" : "bottom" }, {"orig_name" : ["_r\\d\\.phd$","_r\\d\\.fph$","^smb\\.art$","soldbotm.art","^sm_botm$","bot_soldermask"], "tl_name" : "sm_botm" }, - {"orig_name" : ["^silk_bottom\\.art$","sleg.art","^silk_bot$","bot_silkscreen"], "tl_name" : "silk_bot" }, - {"orig_name" : ["pastbotm.art","^past_botm$","bot_solderpaste"], "tl_name" : "past_botm" }, + {"orig_name" : ["^silk_bottom\\.art$","sleg\\.art","^silk_bot$","bot_silkscreen"], "tl_name" : "silk_bot" }, + {"orig_name" : ["pastbotm\\.art","^past_botm$","bot_solderpaste"], "tl_name" : "past_botm" }, {"orig_name" : ["^nc_drill$","^drill$"], "tl_name" : "drill" }, - {"orig_name" : "multipack.art", "tl_name" : "array" }, + {"orig_name" : "multipack\\.art", "tl_name" : "array" }, {"orig_name" : ["\\.rou$","^rout$"], "tl_name" : "rout" }, {"orig_name" : ["outline.art","^outline$"], "tl_name" : "outline" }, {"orig_name" : ["fab.art","fab"], "tl_name" : "fab" }, @@ -802,22 +802,22 @@ } ], "tl_name": [ - {"orig_name" : ["SoldPasteTop\.ger","past_top"], "tl_name" : "past_top" }, - {"orig_name" : ["SoldPasteBot\.ger","past_botm"], "tl_name" : "past_botm" }, - {"orig_name" : ["^smt\.art$","\.ssa$","SilkScrnTop\.ger","silk_top"], "tl_name" : "silk_top" }, - {"orig_name" : ["^smb\.art$","\.ssb$","SilkScrnBot\.ger","silk_bot"], "tl_name" : "silk_bot" }, - {"orig_name" : ["\.sma$","SoldMask1Top\.ger","sm_top"], "tl_name" : "sm_top" }, - {"orig_name" : ["\.smb$","SoldMask1Bot\.ger","sm_bot"], "tl_name" : "sm_botm" }, + {"orig_name" : ["^pmt\\.art$","SoldPasteTop\\.ger","past_top"], "tl_name" : "past_top" }, + {"orig_name" : ["^pmb\\.art$","SoldPasteBot\\.ger","past_botm"], "tl_name" : "past_botm" }, + {"orig_name" : ["^sst\\.art$","\\.ssa$","SilkScrnTop\\.ger","silk_top"], "tl_name" : "silk_top" }, + {"orig_name" : ["^ssb\\.art$","\\.ssb$","SilkScrnBot\\.ger","silk_bot"], "tl_name" : "silk_bot" }, + {"orig_name" : ["^smt\\.art$","\\.sma$","SoldMask1Top\\.ger","sm_top"], "tl_name" : "sm_top" }, + {"orig_name" : ["^smb\\.art$","\\.smb$","SoldMask1Bot\\.ger","sm_bot"], "tl_name" : "sm_botm" }, {"orig_name" : ["^top$","^top.art$"], "tl_name" : "top" }, - {"orig_name" : ["^s(\\d+)\.art$","\.l(\\d+)$","Copper(\\d+)\.ger$","^layer_(\\d+)"], "tl_name" : "l_($1)"}, - {"orig_name" : ["^bottom$","^bottom.art$"], "tl_name" : "bottom" }, - {"orig_name" : ["\.d(\\d+)$"], "tl_name" : "d_($1)-($1+1)"}, - {"orig_name" : ["ThruHolePlated_(\\d+)_(\\d+)\.ncd$","d(\\d+)-(\\d+)"], "tl_name" : "d_($1)-($2)"}, - {"orig_name" : ["ThruHoleNonPlated\.ncd$","^drill$"], "tl_name" : "drill" }, + {"orig_name" : ["^g(\\d+)\\.art$","^s(\\d+)\\.art$","\\.l(\\d+)$","Copper(\\d+)\\.ger$","^layer_(\\d+)"], "tl_name" : "l_($1)"}, + {"orig_name" : ["^bot\\.art$","^bottom$","^bottom.art$"], "tl_name" : "bottom" }, + {"orig_name" : ["\\.d(\\d+)$"], "tl_name" : "d_($1)-($1+1)"}, + {"orig_name" : ["ThruHolePlated_(\\d+)_(\\d+)\\.ncd$","d(\\d+)-(\\d+)"], "tl_name" : "d_($1)-($2)"}, + {"orig_name" : ["ThruHoleNonPlated\\.ncd$","^drill$"], "tl_name" : "drill" }, {"orig_name" : ["\\.rou$","^rout$"], "tl_name" : "rout" }, {"orig_name" : "fab.art", "tl_name" : "fab.art" }, {"orig_name" : ["multipack.art","^array$"], "tl_name" : "array" }, - {"orig_name" : ["PnlContourNonPlated\.ger","^outline"], "tl_name" : "outline" }, + {"orig_name" : ["\\.bol$","PnlContourNonPlated\\.ger","^outline"], "tl_name" : "outline" }, {"orig_name" : ["top-enig","enig_top"], "tl_name" : "enig_top" }, {"orig_name" : ["bot-enig","enig_bot"], "tl_name" : "enig_bot" }, ] @@ -859,22 +859,24 @@ } ], "tl_name": [ - {"orig_name" : ["assytop.art","past_top"], "tl_name" : "past_top" }, - {"orig_name" : ["assybot.art","past_botm"], "tl_name" : "past_botm" }, - {"orig_name" : ["pleg.art","^ss_top","silk_top"], "tl_name" : "silk_top" }, - {"orig_name" : ["sleg.art","^ss_bot","silk_bot"], "tl_name" : "silk_bot" }, - {"orig_name" : ["ssm.art","sm_top"], "tl_name" : "sm_top" }, - {"orig_name" : ["psm.art","sm_bot"], "tl_name" : "sm_botm" }, - {"orig_name" : ["^top$","^top.art$"], "tl_name" : "top" }, - {"orig_name" : ["^0(\\d+).*ccp_ms","^s(\\d+)\.art","lay(\\d+)\\.art","layer_(\\d+)"], "tl_name" : "l_($1)"}, - {"orig_name" : ["^bottom$","^bottom.art$"], "tl_name" : "bottom" }, - {"orig_name" : ["-(\\d+)-(\\d+)\.drl$","(\\d+)-(\\d+)-laser\.drl$","d(\\d+)-(\\d+)"], "tl_name" : "d_($1)-($2)"}, + {"orig_name" : ["solderpastetop","past_top"], "tl_name" : "past_top" }, + {"orig_name" : ["solderpastebottom","past_botm"], "tl_name" : "past_botm" }, + {"orig_name" : ["pleg\\.art","^ss_top","silk_top"], "tl_name" : "silk_top" }, + {"orig_name" : ["sleg\\.art","^ss_bot","silk_bot"], "tl_name" : "silk_bot" }, + {"orig_name" : ["soldermasktop","sm_top"], "tl_name" : "sm_top" }, + {"orig_name" : ["soldermaskbottom","sm_bot"], "tl_name" : "sm_botm" }, + {"orig_name" : ["^top$","layertop"], "tl_name" : "top" }, + {"orig_name" : ["layer(\\d+)\\.gdo","layer_(\\d+)"], "tl_name" : "l_($1)"}, + {"orig_name" : ["^bottom$","layerbottom"], "tl_name" : "bottom" }, + {"orig_name" : ["-(\\d+)-(\\d+)\\.drl$","(\\d+)-(\\d+)-laser\\.drl$","d(\\d+)-(\\d+)"], "tl_name" : "d_($1)-($2)"}, {"orig_name" : ["\\.rou$","^rout$"], "tl_name" : "rout" }, {"orig_name" : "fab.art", "tl_name" : "fab.art" }, - {"orig_name" : ["multipack.art","^array$"], "tl_name" : "array" }, + {"orig_name" : ["pcb-set","^array$"], "tl_name" : "array" }, {"orig_name" : ["^outline"], "tl_name" : "outline" }, - {"orig_name" : ["top-enig","enig_top"], "tl_name" : "enig_top" }, - {"orig_name" : ["bot-enig","enig_bot"], "tl_name" : "enig_bot" }, + {"orig_name" : ["au_mask_bottom\\.gdo","enig_top"], "tl_name" : "enig_top" }, + {"orig_name" : ["au_mask_top\\.gdo","enig_bot"], "tl_name" : "enig_bot" }, + {"orig_name" : ["cavitytop","cavity_top"], "tl_name" : "cavity_top" }, + {"orig_name" : ["cavitybottom","cavity_bot"], "tl_name" : "cavity_bot" }, ] } }, @@ -895,6 +897,8 @@ {"tl_name":"rout","new_name":"rout" ,"attr":{"context":"board","type":"rout"}}, {"tl_name":"outline","new_name":"outline" ,"attr":{"context":"board","type":"rout"}}, {"tl_name":"array","new_name":"array" ,"attr":{"context":"misc"}}, + {"tl_name":"cavity_top","new_name":"cavity_top" ,"attr":{"context":"misc"}}, + {"tl_name":"cavity_bot","new_name":"cavity_bot" ,"attr":{"context":"misc"}}, {"tl_name":"fab.art","new_name":"fab.art" ,"attr":{"context":"misc"}} ], "delSameJob": "yes"