public void Set_OC_Mode_Limit(OC_Mode mode, int band, int gray, XYLv xylv) { if (mode == OC_Mode.Mode1) { OC_Mode1_Limit[band, gray] = xylv; } else if (mode == OC_Mode.Mode2) { OC_Mode2_Limit[band, gray] = xylv; } else if (mode == OC_Mode.Mode3) { OC_Mode3_Limit[band, gray] = xylv; } else if (mode == OC_Mode.Mode4) { OC_Mode4_Limit[band, gray] = xylv; } else if (mode == OC_Mode.Mode5) { OC_Mode5_Limit[band, gray] = xylv; } else if (mode == OC_Mode.Mode6) { OC_Mode6_Limit[band, gray] = xylv; } else { throw new Exception("Mode Should be 1~6"); } }
private void UpdateOCMode23Target(int band, int gray) { XYLv OCMode1FinalMeas = ocparam.Get_OC_Mode_Measure(OC_Mode.Mode1, band, gray); ocparam.Set_OC_Mode_Target(OC_Mode.Mode2, band, gray, OCMode1FinalMeas); ocparam.Set_OC_Mode_Target(OC_Mode.Mode3, band, gray, OCMode1FinalMeas); }
public void Set_OC_Mode_Measure(XYLv measured, OC_Mode mode, int band, int gray) { if (mode == OC_Mode.Mode1) { OC_Mode1_Measure[band, gray] = measured; } else if (mode == OC_Mode.Mode2) { OC_Mode2_Measure[band, gray] = measured; } else if (mode == OC_Mode.Mode3) { OC_Mode3_Measure[band, gray] = measured; } else if (mode == OC_Mode.Mode4) { OC_Mode4_Measure[band, gray] = measured; } else if (mode == OC_Mode.Mode5) { OC_Mode5_Measure[band, gray] = measured; } else if (mode == OC_Mode.Mode6) { OC_Mode6_Measure[band, gray] = measured; } else { throw new Exception("Mode Should be 1~6"); } }
protected void MeasureAndUpdate(OC_Mode mode, int band, int gray) { double[] MeasuredXYLv = api.measure_XYL(channel_num); ocparam.Set_OC_Mode_Measure(new XYLv(MeasuredXYLv[0], MeasuredXYLv[1], MeasuredXYLv[2]), mode, band, gray); XYLv TargetXYLv = ocparam.Get_OC_Mode_Target(mode, band, gray); api.WriteLine($"Measured X / Y / Lv : {MeasuredXYLv[0]} / {MeasuredXYLv[1]} / {MeasuredXYLv[2]}"); api.WriteLine($"Target X / Y / Lv : {TargetXYLv.double_X} / {TargetXYLv.double_Y} / {TargetXYLv.double_Lv}"); }
private void RGBOpticCompensation(ref RGB Gamma, OC_Mode mode, int band, int gray) { XYLv Measured = ocparam.Get_OC_Mode_Measure(mode, band, gray); XYLv Target = ocparam.Get_OC_Mode_Target(mode, band, gray); XYLv Limit = ocparam.Get_OC_Mode_Limit(mode, band, gray); XYLv ExtensionXY = ocparam.Get_OC_Mode_ExtensionXY(mode, band, gray); int loopCount = ocparam.Get_OC_Mode_LoopCount(mode, band, gray); vars.Check_InfiniteLoop(loopCount, Gamma); Imported_my_cpp_dll.Sub_Compensation(loopCount, vars.IsInfiniteLoop, ref vars.InfiniteLoopCount, ref Gamma.int_R, ref Gamma.int_G, ref Gamma.int_B, Measured.double_X, Measured.double_Y, Measured.double_Lv, Target.double_X, Target.double_Y, Target.double_Lv, Limit.double_X, Limit.double_Y, Limit.double_Lv, ExtensionXY.double_X, ExtensionXY.double_Y, DP213_Static.Gamma_Register_Max, ref vars.Gamma_Out_Of_Register_Limit, ref vars.Within_Spec_Limit); }
private void RVreg1BOpticCompensation(ref RGB Gamma, ref int vreg1, OC_Mode mode, int band, int gray) { XYLv Measured = ocparam.Get_OC_Mode_Measure(mode, band, gray); XYLv Target = ocparam.Get_OC_Mode_Target(mode, band, gray); XYLv Limit = ocparam.Get_OC_Mode_Limit(mode, band, gray); XYLv ExtensionXY = ocparam.Get_OC_Mode_ExtensionXY(mode, band, gray); int loopCount = ocparam.Get_OC_Mode_LoopCount(mode, band, gray); Imported_my_cpp_dll.Vreg1_Compensation(loopCount, Vreg1_Infinite_Loop: false, Vreg1_Infinite_Loop_Count: 0, ref Gamma.int_R, ref vreg1, ref Gamma.int_B, Measured.double_X, Measured.double_Y, Measured.double_Lv, Target.double_X, Target.double_Y, Target.double_Lv, Limit.double_X, Limit.double_Y, Limit.double_Lv, ExtensionXY.double_X, ExtensionXY.double_Y, DP213_Static.Gamma_Register_Max, DP213_Static.Vreg1_Register_Max, ref vars.Gamma_Out_Of_Register_Limit, ref vars.Within_Spec_Limit); }
private XYLv[] Get_Multitimes_Measured_Values(int how_many_times) { XYLv[] Temp_Measures = new XYLv[how_many_times]; for (int i = 0; i < Temp_Measures.Length; i++) { double[] measured = api.measure_XYL(channel_num); Temp_Measures[i].double_X = measured[0]; Temp_Measures[i].double_Y = measured[1]; Temp_Measures[i].double_Lv = measured[2]; } return(Temp_Measures); }
static void Main(string[] args) { const int n = 3; RGB[] rgb60 = new RGB[n]; rgb60[0].R = 500; rgb60[0].G = 377; rgb60[0].B = 333; rgb60[1].R = 151; rgb60[1].G = 369; rgb60[1].B = 181; rgb60[2].R = 145; rgb60[2].G = 367; rgb60[2].B = 317; RGB[] rgb90 = new RGB[n]; rgb90[0].R = 317; rgb90[0].G = 167; rgb90[0].B = 54; rgb90[1].R = 242; rgb90[1].G = 96; rgb90[1].B = 458; rgb90[2].R = 338; rgb90[2].G = 492; rgb90[2].B = 464; RGB[] rgb120 = new RGB[n]; rgb120[0].R = 188; rgb120[0].G = 230; rgb120[0].B = 71; rgb120[1].R = 448; rgb120[1].G = 247; rgb120[1].B = 504; rgb120[2].R = 71; rgb120[2].G = 108; rgb120[2].B = 160; XYLv[] xylv60 = new XYLv[n]; xylv60[0].X = 0.306; xylv60[0].Y = 0.313; xylv60[0].Lv = 908; xylv60[1].X = 0.309; xylv60[1].Y = 0.312; xylv60[1].Lv = 899; xylv60[2].X = 0.310; xylv60[2].Y = 0.319; xylv60[2].Lv = 898; XYLv[] xylv90 = new XYLv[n]; xylv90[0].X = 0.304; xylv90[0].Y = 0.312; xylv90[0].Lv = 902; xylv90[1].X = 0.302; xylv90[1].Y = 0.319; xylv90[1].Lv = 904; xylv90[2].X = 0.306; xylv90[2].Y = 0.313; xylv90[2].Lv = 902; XYLv[] xylv120 = new XYLv[n];; xylv120[0].X = 0.309; xylv120[0].Y = 0.311; xylv120[0].Lv = 907; xylv120[1].X = 0.304; xylv120[1].Y = 0.311; xylv120[1].Lv = 895; xylv120[2].X = 0.307; xylv120[2].Y = 0.320; xylv120[2].Lv = 907; string ans = Program.min_Dist(rgb60, rgb90, rgb120, xylv60, xylv90, xylv120, n); Console.WriteLine("result(ans) : " + ans); }
public void Set_OC_Mode_Target(OC_Mode mode, int band, int gray, XYLv xylv) => target.Set_OC_Mode_Target(mode, band, gray, xylv);
public void Set_OC_Mode_Measure(XYLv measured, OC_Mode mode, int band, int gray) => measure.Set_OC_Mode_Measure(measured, mode, band, gray);
public void Set_OC_Mode_Limit(OC_Mode mode, int band, int gray, XYLv xylv) => limit.Set_OC_Mode_Limit(mode, band, gray, xylv);
public void Set_OC_Mode_ExtensionXY(OC_Mode mode, int band, int gray, XYLv xylv) => extensionXY.Set_OC_Mode_ExtensionXY(mode, band, gray, xylv);
public void Set_OC_Mode_Target(OC_Mode mode, int band, int gray, XYLv xylv) { throw new NotImplementedException(); }
public void Set_OC_Mode_Measure(XYLv measured, OC_Mode mode, int band, int gray) { throw new NotImplementedException(); }