public Action <double, double, dynamic> Create_DrawNG(TargetNG NGType) { switch (NGType) { case TargetNG.None: return(new Action <double, double, dynamic>((row, col, img) => {})); case TargetNG.IR5V: return(FnDrawCircle(1, FailColor["IR5V"])); case TargetNG.Full: return(FnDrawCircle(2, FailColor["Full"])); case TargetNG.VF1: return(FnDrawCircle(3, FailColor["VF1"])); case TargetNG.VF2: return(FnDrawCircle(5, FailColor["VF2"])); case TargetNG.VF3: return(FnDrawCircle(6, FailColor["VF3"])); case TargetNG.VF1IR: return(FnDrawCircle(4, FailColor["VF1IR"])); } return(null); }
public Func <int, int, bool> Create_CheckTargetNg(TargetNG NGType) { switch (NGType) { case TargetNG.None: return(new Func <int, int, bool>((row, col) => { return false; })); case TargetNG.Full: return(new Func <int, int, bool>((row, col) => { if (TargetData[new int[] { row, col }]["Label"] == "NG") { return true; } else { return false; } })); case TargetNG.IR5V: return(new Func <int, int, bool>((row, col) => { if (TargetData[new int[] { row, col }]["IR5V"] < 1.0) { return true; } else { return false; } })); case TargetNG.VF1: return(new Func <int, int, bool>((row, col) => { if (TargetData[new int[] { row, col }]["VF1"] < 1.8) { return true; } else { return false; } })); case TargetNG.VF2: return(new Func <int, int, bool>((row, col) => { if (TargetData[new int[] { row, col }]["VF2"] < 1.8) { return true; } else { return false; } })); case TargetNG.VF3: return(new Func <int, int, bool>((row, col) => { if (TargetData[new int[] { row, col }]["VF3"] < 1.8) { return true; } else { return false; } })); case TargetNG.VF1IR: return(new Func <int, int, bool>((row, col) => { var target = TargetData[new int[] { row, col }]; if (target["VF1"] < 1.8 || target["IR"] < 1) { return true; } else { return false; } })); } return(null); }