var config = { "formats": { "ODB": {}, "ODB_1": { "comments": "", "arrStep": "stp", "isMerge": "yes" }, "Gerber274x_1": { // cust1 "nf1": 3, "nf2": 4, "units": "mm", "zeroes": "leading", "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "*", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "inch", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 }, "Gerber274x_2": { // cust2 "nf1": 3, "nf2": 5, "units": "inch", "zeroes": "leading", "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "*", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "inch", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 }, "Excellon1_1":{ // cust1 "nf1": 3, "nf2": 0, "units": "mm", "zeroes": "leading", "decimal": "yes", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "nl", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "mm", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 }, "Excellon2_1": { // cust2 "nf1": 3, "nf2": 5, "units": "mm", "zeroes": "leading", "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "nl", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "mm", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 }, "Excellon2_2": { "nf1": 2, "nf2": 3, "units": "inch", "zeroes": "leading", "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "nl", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "inch", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 }, "Excellon2_3": { // cust2 "nf1": 2, "nf2": 5, "units": "inch", "zeroes": "trailing", "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "nl", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "mm", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 }, "IPC356_1": { // cust2 "nf1": 2, "nf2": 4, "units": "inch", "zeroes": "none", "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "*", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "inch", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 } }, "customer": { "Customer_1": { "path": "C:/Users/Administrator/Desktop/Customer_1", "db": "genesis", "step": "cad", "rules": [ { "valid": function(props){ var file = props.file; var job = props.job; var reg = new RegExp("^"+job+"-a","ig") return /.+\.tgz$/ig.test(file.name) && reg.test(file.baseName) }, "type": "ODB", "format": "ODB_1" }, { "valid": function(props){ var file = props.file; var job = props.job; return /.+\.tgz$/ig.test(file.name) && job == file.baseName }, "type": "ODB", "format": "ODB" }, { "valid": function(props){ var file = props.file; return /.+\.drd$/ig.test(file.name) }, "type": "Excellon1", "format": "Excellon1_1" }, { "valid": function(props){ var file = props.file; return /.+\.phd$/ig.test(file.name) }, "type": "Gerber274x", "format": "Gerber274x_1" } ], "tl_name": [ {"orig_name" : "^spt$", "tl_name" : "spt" }, {"orig_name" : "^smt$", "tl_name" : "smt" }, {"orig_name" : "^smb$", "tl_name" : "smb" }, {"orig_name" : "^spb$", "tl_name" : "spb" }, {"orig_name" : "^ssb$", "tl_name" : "ssb" }, {"orig_name" : "^sst$", "tl_name" : "sst" }, {"orig_name" : "^top$", "tl_name" : "top" }, {"orig_name" : "^drill$", "tl_name" : "drill" }, {"orig_name" : "^rout$", "tl_name" : "rout" }, {"orig_name" : "^bottom$", "tl_name" : "bottom" }, {"orig_name" : ["^isl(\\d+)$","^layer_(\\d+)$"], "tl_name" : "l_($1)"}, {"orig_name" : ["_isl(\\d+)_isl(\\d+)","d(\\d+)-(\\d+)"], "tl_name" : "d_($1)-($2)"}, {"orig_name" : ["_top_isl(\\d+)"], "tl_name" : "d_1-($1)"}, {"orig_name" : ["_isl(\\d+)_bottom"], "tl_name" : "d_($1)-($1+1)"} ] }, "Customer_2": { "path": "C:/Users/Administrator/Desktop/Customer_2", "db": "genesis", "step": "cad", "rules": [ { "valid": function(props){ var file = props.file; return /.+\.tgz$/ig.test(file.name) }, "type": "ODB", "format": "ODB" }, { "valid": function(props){ var file = props.file; return /.+\.ipc$/ig.test(file.name) }, "type": "IPC356", "format": "IPC356_1" }, { "valid": function(props){ var file = props.file; return /.+\.rou$/ig.test(file.name) }, "type": "Excellon2", "format": "Excellon2_3" }, { "valid": function(props){ var file = props.file; return /.+\.art$/ig.test(file.name) }, "type": "Gerber274x", "format": "Gerber274x_2", "format_params": function(props){ var params = props.params if(params.art_param){ var leading = params.art_param["SUPPRESS_LEAD_ZEROES"] var trailing = params.art_param["SUPPRESS_TRAIL_ZEROES"] var zeroes = "none" if(/yes/ig.test(leading)){ zeroes = "leading" } if(/yes/ig.test(trailing)){ zeroes = "trailing" } var nf1,nf2 if(params.art_param.hasOwnProperty("FORMAT")){ var tmp = params.art_param["FORMAT"].split(".") if(/\d+/ig.test(tmp[0])){nf1 = Number(tmp[0])} if(/\d+/ig.test(tmp[1])){nf2 = Number(tmp[1])} } return { "nf1": nf1 || 3, "nf2": nf2 || 5, "units": /METRIC|MM/ig.test(params.art_param["OUTPUT_UNITS"])? "mm" :"inch", "zeroes": zeroes, "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "*", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": /METRIC|MM/ig.test(params.art_param["OUTPUT_UNITS"])? "mm" :"inch", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 } } } }, { "valid": function(props){ var file = props.file; return /.+\.drl$/ig.test(file.name) }, "type": "Excellon2", "format": "Excellon2_1", "format_params": function(props){ var params = props.params if(params.nc_param){ var leading = params.nc_param["SUPPRESS_LEAD_ZEROES"] var trailing = params.nc_param["SUPPRESS_TRAIL_ZEROES"] var zeroes = "none" if(/yes/ig.test(leading)){ zeroes = "leading" } if(/yes/ig.test(trailing)){ zeroes = "trailing" } return { "nf1": params.nc_param["INTEGER_PLACES"]? Number(params.nc_param["INTEGER_PLACES"]) : 3, "nf2": params.nc_param["DECIMAL_PLACES"]? Number(params.nc_param["DECIMAL_PLACES"]) : 5, "units": /METRIC|MM/ig.test(params.nc_param["OUTPUT_UNITS"])? "mm" :"inch", "zeroes": zeroes, "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "nl", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": /METRIC|MM/ig.test(params.nc_param["OUTPUT_UNITS"])? "mm" :"inch", "coordinates": params.nc_param["COORDINATES"]? params.nc_param["COORDINATES"].toLowerCase() :"absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 } } } } ], "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","silk_top"], "tl_name" : "silk_top" }, {"orig_name" : ["sleg.art","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" : ["\\.rou$","rout"], "tl_name" : "rout" }, {"orig_name" : "fab.art", "tl_name" : "fab.art" }, {"orig_name" : ["multipack.art","^array$"], "tl_name" : "array" }, {"orig_name" : ["outline.art","^outline$"], "tl_name" : "outline" }, {"orig_name" : "top-enig", "tl_name" : "top-enig" }, {"orig_name" : "bot-enig", "tl_name" : "bot-enig" }, {"orig_name" : "fab_page2", "tl_name" : "fab_page2" }, ] }, "New_data": { "path": "C:/Users/Administrator/Desktop/New data", "db": "genesis", "step": "cad", "rules": [ { "valid": function(props){ var file = props.file; return /.+\.tgz$/ig.test(file.name) }, "type": "ODB", "format": "ODB" }, { "valid": function(props){ var file = props.file; return /.+\.art$/ig.test(file.name) }, "type": "Gerber274x", "format": "Gerber274x_2", "format_params": function(props){ var params = props.params if(params.art_param){ var leading = params.art_param["SUPPRESS_LEAD_ZEROES"] var trailing = params.art_param["SUPPRESS_TRAIL_ZEROES"] var zeroes = "none" if(/yes/ig.test(leading)){ zeroes = "leading" } if(/yes/ig.test(trailing)){ zeroes = "trailing" } var nf1,nf2 if(params.art_param.hasOwnProperty("FORMAT")){ var tmp = params.art_param["FORMAT"].split(".") if(/\d+/ig.test(tmp[0])){nf1 = Number(tmp[0])} if(/\d+/ig.test(tmp[1])){nf2 = Number(tmp[1])} } return { "nf1": nf1 || 3, "nf2": nf2 || 5, "units": /METRIC|MM/ig.test(params.art_param["OUTPUT_UNITS"])? "mm" :"inch", "zeroes": zeroes, "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "*", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": /METRIC|MM/ig.test(params.art_param["OUTPUT_UNITS"])? "mm" :"inch", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 } } } }, { "valid": function(props){ var file = props.file; return /.+\.drl$/ig.test(file.name) }, "type": "Excellon2", "format": "Excellon2_1", "format_params": function(props){ var params = props.params if(params.nc_param){ var leading = params.nc_param["SUPPRESS_LEAD_ZEROES"] var trailing = params.nc_param["SUPPRESS_TRAIL_ZEROES"] var zeroes = "none" if(/yes/ig.test(leading)){ zeroes = "leading" } if(/yes/ig.test(trailing)){ zeroes = "trailing" } return { "nf1": params.nc_param["INTEGER_PLACES"]? Number(params.nc_param["INTEGER_PLACES"]) : 3, "nf2": params.nc_param["DECIMAL_PLACES"]? Number(params.nc_param["DECIMAL_PLACES"]) : 5, "units": /METRIC|MM/ig.test(params.nc_param["OUTPUT_UNITS"])? "mm" :"inch", "zeroes": zeroes, "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "nl", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": /METRIC|MM/ig.test(params.nc_param["OUTPUT_UNITS"])? "mm" :"inch", "coordinates": params.nc_param["COORDINATES"]? params.nc_param["COORDINATES"].toLowerCase() :"absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 } } } } ], "tl_name": [ {"orig_name" : "pasttop.art", "tl_name" : "past_top" }, {"orig_name" : "pleg.art", "tl_name" : "silk_top" }, {"orig_name" : "soldtop.art", "tl_name" : "sm_top" }, {"orig_name" : ["top.art","^top$"], "tl_name" : "top" }, {"orig_name" : ["art(\\d+)\\.art","layer_(\\d+)"], "tl_name" : "l_($1)"}, {"orig_name" : ["bottom.art","^bottom$"], "tl_name" : "bottom" }, {"orig_name" : "soldbotm.art", "tl_name" : "sm_botm" }, {"orig_name" : "sleg.art", "tl_name" : "silk_bot" }, {"orig_name" : "pastbotm.art", "tl_name" : "past_botm" }, {"orig_name" : "multipack.art", "tl_name" : "array" }, {"orig_name" : "outline.art", "tl_name" : "outline" }, {"orig_name" : "fab.art", "tl_name" : "fab" }, {"orig_name" : "top-enig", "tl_name" : "top-enig" }, {"orig_name" : "bot-enig", "tl_name" : "bot-enig" }, {"orig_name" : "fab_page2", "tl_name" : "fab_page2" }, {"orig_name" : ["(\\d+)-(\\d+)$","d(\\d+)-(\\d+)"], "tl_name" : "d_($1)-($2)"} ] } }, "data_format": [ {"tl_name":"past_top" , "new_name":"past_top" , "attr":{ "context":"board", "type":"solder_paste" }}, {"tl_name":"silk_top" , "new_name":"silk_top" , "attr":{ "context":"board", "type":"solder_paste" }}, {"tl_name":"sm_top" , "new_name":"sm_top" , "attr":{ "context":"board", "type":"solder_mask" }}, {"tl_name":"^top$" , "new_name":"top" , "attr":{ "context":"board", "type":"signal" }}, {"tl_name":"l_(\\d+)","new_name":"layer_($1)" ,"attr":{"context":"board","type":"signal"}}, {"tl_name":"^bottom$","new_name":"bottom" ,"attr":{"context":"board","type":"signal"}}, {"tl_name":"sm_botm" , "new_name":"sm_botm" , "attr":{ "context":"board", "type":"solder_mask" }}, {"tl_name":"silk_bot" , "new_name":"silk_bot" , "attr":{ "context":"board", "type":"solder_paste" }}, {"tl_name":"past_botm" , "new_name":"past_botm" , "attr":{ "context":"board", "type":"solder_paste" }}, {"tl_name":"d_(\\d+)-(\\d+)","new_name":"d($1)-($2)" ,"attr":{"context":"board","type":"drill"}}, {"tl_name":"drill","new_name":"drill" ,"attr":{"context":"board","type":"drill"}}, {"tl_name":"rout","new_name":"rout" ,"attr":{"context":"board","type":"rout"}}, {"tl_name":"array","new_name":"array" ,"attr":{"context":"misc"}}, {"tl_name":"outline","new_name":"outline" ,"attr":{"context":"misc"}}, {"tl_name":"fab.art","new_name":"fab.art" ,"attr":{"context":"misc"}} ], "delSameJob": "yes" } module.exports = config /* (function(){return { "formats": { "ODB": {}, "ODB_1": { "comments": "", "arrStep": "stp", "isMerge": "yes" }, "Gerber274x_1": { // cust1 "nf1": 3, "nf2": 4, "units": "mm", "zeroes": "leading", "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "*", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "inch", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 }, "Gerber274x_2": { // cust2 "nf1": 3, "nf2": 5, "units": "inch", "zeroes": "leading", "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "*", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "inch", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 }, "Excellon1_1":{ // cust1 "nf1": 3, "nf2": 0, "units": "mm", "zeroes": "leading", "decimal": "yes", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "nl", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "mm", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 }, "Excellon2_1": { // cust2 "nf1": 3, "nf2": 5, "units": "mm", "zeroes": "leading", "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "nl", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "mm", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 }, "Excellon2_2": { "nf1": 2, "nf2": 3, "units": "inch", "zeroes": "leading", "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "nl", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "inch", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 }, "Excellon2_3": { // cust2 "nf1": 2, "nf2": 5, "units": "inch", "zeroes": "trailing", "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "nl", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "mm", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 }, "IPC356_1": { // cust2 "nf1": 2, "nf2": 4, "units": "inch", "zeroes": "none", "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "*", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": "inch", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 } }, "customer": { "Customer_1": { "path": "C:/Users/Administrator/Desktop/Customer_1", "db": "genesis", "step": "cad", "rules": [ { "valid": function(props){ var file = props.file; var job = props.job; var reg = new RegExp("^"+job+"-a","ig") return /.+\.tgz$/ig.test(file.name) && reg.test(file.baseName) }, "type": "ODB", "format": "ODB_1" }, { "valid": function(props){ var file = props.file; var job = props.job; return /.+\.tgz$/ig.test(file.name) && job == file.baseName }, "type": "ODB", "format": "ODB" }, { "valid": function(props){ var file = props.file; return /.+\.drd$/ig.test(file.name) }, "type": "Excellon1", "format": "Excellon1_1" }, { "valid": function(props){ var file = props.file; return /.+\.phd$/ig.test(file.name) }, "type": "Gerber274x", "format": "Gerber274x_1" } ], "tl_name": [ {"orig_name" : "^spt$", "tl_name" : "spt" }, {"orig_name" : "^smt$", "tl_name" : "smt" }, {"orig_name" : "^smb$", "tl_name" : "smb" }, {"orig_name" : "^spb$", "tl_name" : "spb" }, {"orig_name" : "^ssb$", "tl_name" : "ssb" }, {"orig_name" : "^sst$", "tl_name" : "sst" }, {"orig_name" : "^top$", "tl_name" : "top" }, {"orig_name" : "^drill$", "tl_name" : "drill" }, {"orig_name" : "^rout$", "tl_name" : "rout" }, {"orig_name" : "^bottom$", "tl_name" : "bottom" }, {"orig_name" : ["^isl(\\d+)$","^layer_(\\d+)$"], "tl_name" : "l_($1)"}, {"orig_name" : ["_isl(\\d+)_isl(\\d+)","d(\\d+)-(\\d+)"], "tl_name" : "d_($1)-($2)"}, {"orig_name" : ["_top_isl(\\d+)"], "tl_name" : "d_1-($1)"}, {"orig_name" : ["_isl(\\d+)_bottom"], "tl_name" : "d_($1)-($1+1)"} ] }, "Customer_2": { "path": "C:/Users/Administrator/Desktop/Customer_2", "db": "genesis", "step": "cad", "rules": [ { "valid": function(props){ var file = props.file; return /.+\.tgz$/ig.test(file.name) }, "type": "ODB", "format": "ODB" }, { "valid": function(props){ var file = props.file; return /.+\.ipc$/ig.test(file.name) }, "type": "IPC356", "format": "IPC356_1" }, { "valid": function(props){ var file = props.file; return /.+\.rou$/ig.test(file.name) }, "type": "Excellon2", "format": "Excellon2_3" }, { "valid": function(props){ var file = props.file; return /.+\.art$/ig.test(file.name) }, "type": "Gerber274x", "format": "Gerber274x_2", "format_params": function(props){ var params = props.params if(params.art_param){ var leading = params.art_param["SUPPRESS_LEAD_ZEROES"] var trailing = params.art_param["SUPPRESS_TRAIL_ZEROES"] var zeroes = "none" if(/yes/ig.test(leading)){ zeroes = "leading" } if(/yes/ig.test(trailing)){ zeroes = "trailing" } var nf1,nf2 if(params.art_param.hasOwnProperty("FORMAT")){ var tmp = params.art_param["FORMAT"].split(".") if(/\d+/ig.test(tmp[0])){nf1 = Number(tmp[0])} if(/\d+/ig.test(tmp[1])){nf2 = Number(tmp[1])} } return { "nf1": nf1 || 3, "nf2": nf2 || 5, "units": /METRIC|MM/ig.test(params.art_param["OUTPUT_UNITS"])? "mm" :"inch", "zeroes": zeroes, "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "*", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": /METRIC|MM/ig.test(params.art_param["OUTPUT_UNITS"])? "mm" :"inch", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 } } } }, { "valid": function(props){ var file = props.file; return /.+\.drl$/ig.test(file.name) }, "type": "Excellon2", "format": "Excellon2_1", "format_params": function(props){ var params = props.params if(params.nc_param){ var leading = params.nc_param["SUPPRESS_LEAD_ZEROES"] var trailing = params.nc_param["SUPPRESS_TRAIL_ZEROES"] var zeroes = "none" if(/yes/ig.test(leading)){ zeroes = "leading" } if(/yes/ig.test(trailing)){ zeroes = "trailing" } return { "nf1": params.nc_param["INTEGER_PLACES"]? Number(params.nc_param["INTEGER_PLACES"]) : 3, "nf2": params.nc_param["DECIMAL_PLACES"]? Number(params.nc_param["DECIMAL_PLACES"]) : 5, "units": /METRIC|MM/ig.test(params.nc_param["OUTPUT_UNITS"])? "mm" :"inch", "zeroes": zeroes, "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "nl", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": /METRIC|MM/ig.test(params.nc_param["OUTPUT_UNITS"])? "mm" :"inch", "coordinates": params.nc_param["COORDINATES"]? params.nc_param["COORDINATES"].toLowerCase() :"absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 } } } } ], "tl_name": [ {"orig_name" : "pasttop.art", "tl_name" : "past_top" }, {"orig_name" : "pleg.art", "tl_name" : "silk_top" }, {"orig_name" : "soldtop.art", "tl_name" : "sm_top" }, {"orig_name" : ["top.art","^top$"], "tl_name" : "top" }, {"orig_name" : ["lay(\\d+)\\.art","layer_(\\d+)"], "tl_name" : "l_($1)"}, {"orig_name" : ["bottom.art","^bottom$"], "tl_name" : "bottom" }, {"orig_name" : "soldbotm.art", "tl_name" : "sm_botm" }, {"orig_name" : "sleg.art", "tl_name" : "silk_bot" }, {"orig_name" : "pastbotm.art", "tl_name" : "past_botm" }, {"orig_name" : "multipack.art", "tl_name" : "array" }, {"orig_name" : "outline.art", "tl_name" : "outline" }, {"orig_name" : "fab.art", "tl_name" : "fab" }, {"orig_name" : "top-enig", "tl_name" : "top-enig" }, {"orig_name" : "bot-enig", "tl_name" : "bot-enig" }, {"orig_name" : "fab_page2", "tl_name" : "fab_page2" }, {"orig_name" : ["-(\\d+)-(\\d+)\.drl","(\\d+)-(\\d+)-laser\.drl","d(\\d+)-(\\d+)"], "tl_name" : "d_($1)-($2)"} ] }, "New_data": { "path": "C:/Users/Administrator/Desktop/New data", "db": "genesis", "step": "cad", "rules": [ { "valid": function(props){ var file = props.file; return /.+\.tgz$/ig.test(file.name) }, "type": "ODB", "format": "ODB" }, { "valid": function(props){ var file = props.file; return /.+\.art$/ig.test(file.name) }, "type": "Gerber274x", "format": "Gerber274x_2", "format_params": function(props){ var params = props.params if(params.art_param){ var leading = params.art_param["SUPPRESS_LEAD_ZEROES"] var trailing = params.art_param["SUPPRESS_TRAIL_ZEROES"] var zeroes = "none" if(/yes/ig.test(leading)){ zeroes = "leading" } if(/yes/ig.test(trailing)){ zeroes = "trailing" } var nf1,nf2 if(params.art_param.hasOwnProperty("FORMAT")){ var tmp = params.art_param["FORMAT"].split(".") if(/\d+/ig.test(tmp[0])){nf1 = Number(tmp[0])} if(/\d+/ig.test(tmp[1])){nf2 = Number(tmp[1])} } return { "nf1": nf1 || 3, "nf2": nf2 || 5, "units": /METRIC|MM/ig.test(params.art_param["OUTPUT_UNITS"])? "mm" :"inch", "zeroes": zeroes, "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "*", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": /METRIC|MM/ig.test(params.art_param["OUTPUT_UNITS"])? "mm" :"inch", "coordinates": "absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 } } } }, { "valid": function(props){ var file = props.file; return /.+\.drl$/ig.test(file.name) }, "type": "Excellon2", "format": "Excellon2_1", "format_params": function(props){ var params = props.params if(params.nc_param){ var leading = params.nc_param["SUPPRESS_LEAD_ZEROES"] var trailing = params.nc_param["SUPPRESS_TRAIL_ZEROES"] var zeroes = "none" if(/yes/ig.test(leading)){ zeroes = "leading" } if(/yes/ig.test(trailing)){ zeroes = "trailing" } return { "nf1": params.nc_param["INTEGER_PLACES"]? Number(params.nc_param["INTEGER_PLACES"]) : 3, "nf2": params.nc_param["DECIMAL_PLACES"]? Number(params.nc_param["DECIMAL_PLACES"]) : 5, "units": /METRIC|MM/ig.test(params.nc_param["OUTPUT_UNITS"])? "mm" :"inch", "zeroes": zeroes, "decimal": "no", "nf_comp": 0, "break_sr": "yes", "data_type": "ascii", "separator": "nl", "threshold": 200, "drill_only": "no", "multiplier": 1, "resolution": 3, "tool_units": /METRIC|MM/ig.test(params.nc_param["OUTPUT_UNITS"])? "mm" :"inch", "coordinates": params.nc_param["COORDINATES"]? params.nc_param["COORDINATES"].toLowerCase() :"absolute", "merge_by_rule": "no", "signed_coords": "no", "text_line_width": 0.0024 } } } } ], "tl_name": [ {"orig_name" : "pasttop.art", "tl_name" : "past_top" }, {"orig_name" : "pleg.art", "tl_name" : "silk_top" }, {"orig_name" : "soldtop.art", "tl_name" : "sm_top" }, {"orig_name" : ["top.art","^top$"], "tl_name" : "top" }, {"orig_name" : ["art(\\d+)\\.art","layer_(\\d+)"], "tl_name" : "l_($1)"}, {"orig_name" : ["bottom.art","^bottom$"], "tl_name" : "bottom" }, {"orig_name" : "soldbotm.art", "tl_name" : "sm_botm" }, {"orig_name" : "sleg.art", "tl_name" : "silk_bot" }, {"orig_name" : "pastbotm.art", "tl_name" : "past_botm" }, {"orig_name" : "multipack.art", "tl_name" : "array" }, {"orig_name" : "outline.art", "tl_name" : "outline" }, {"orig_name" : "fab.art", "tl_name" : "fab" }, {"orig_name" : "top-enig", "tl_name" : "top-enig" }, {"orig_name" : "bot-enig", "tl_name" : "bot-enig" }, {"orig_name" : "fab_page2", "tl_name" : "fab_page2" }, {"orig_name" : ["(\\d+)-(\\d+)$","d(\\d+)-(\\d+)"], "tl_name" : "d_($1)-($2)"} ] } }, "data_format": [ {"tl_name":"^top$" , "new_name":"top" , "attr":{ "context":"board", "type":"signal" }}, // new_name 里支持特殊变量 {"tl_name":"l_(\\d+)","new_name":"layer_($1)" ,"attr":{"context":"board","type":"signal"}}, {"tl_name":"^bottom$","new_name":"bottom" ,"attr":{"context":"board","type":"signal"}}, {"tl_name":"d_(\\d+)-(\\d+)","new_name":"d($1)-($2)" ,"attr":{"context":"board","type":"drill"}}, {"tl_name":"drill","new_name":"drill" ,"attr":{"context":"board","type":"drill"}}, {"tl_name":"rout","new_name":"rout" ,"attr":{"context":"board","type":"rout"}} ], "delSameJob": "yes" }})() */