public void Init(ParLinesDotsPosNegInspect par, List <CellReference> cellExecute_L, List <CellHObjectReference> cellHObject_L, Hashtable htCellRef_Mult, Hashtable htResult_MultC)
        {
            try
            {
                g_ParLinesDotsDPNIns = par;
                g_AuthorityCtr_L     = par.g_AuthorityCtr_L;
                g_cellExecute_L      = cellExecute_L;

                HtCellRef_Mult = htCellRef_Mult;
                HtResult_Mult  = htResult_MultC;

                uCUseCalib.Init(par, cellExecute_L);  //使用校准
                uCSetRecord.Init(par, cellHObject_L); //设置记录
                ShowPar_Invoke();
            }
            catch (Exception ex)
            {
                Log.L_I.WriteError(NameClass, ex);
            }
        }
        /// <summary>
        /// 初始化参数
        /// </summary>
        public override string Init(BaseParImageProcess par, BaseUCDisplayCamera baseUCCamera, List <CellReference> cellExe_L, List <CellHObjectReference> cellHObject_L, List <CellReference> cellData_L, Hashtable htResult, Hashtable htCellRef_Mult, Hashtable htResult_MultC)
        {
            string nameWin = "";

            try
            {
                #region 窗体名称
                if (g_ParAlgorithm != null)
                {
                    nameWin = g_ParAlgorithm.NoCamera.ToString() + g_ParAlgorithm.NameCell;
                }
                #endregion 窗体名称

                #region 赋值
                NameClass = "WinLinesDotsPosNegInspect" + par.NameCell;

                //参数赋值
                g_ParAlgorithm = par;
                g_ParLinesDotsPosNegInspect = (ParLinesDotsPosNegInspect)par;
                g_ParAlgorithm_Old          = (ParLinesDotsPosNegInspect)par.Clone();
                //权限设置
                g_AuthorityCtr_L = par.g_AuthorityCtr_L;

                g_HtResult      = htResult;      //结果
                g_CellData_L    = cellData_L;    //数据单元
                g_CellExecute_L = cellExe_L;     //可执行单元
                g_CellHObject_L = cellHObject_L; //可执行图像单元
                #endregion 赋值

                //参数初始化
                uCLinesDotsPosNegInspect.Init((ParLinesDotsPosNegInspect)par, cellExe_L, cellHObject_L, htCellRef_Mult, htResult_MultC);

                //相机控制类
                g_BaseUCDisplayCamera = baseUCCamera;

                //图像预处理
                uCPreProcess.Init(baseUCCamera, ((ParLinesDotsPosNegInspect)par).g_ParPreprocess, cellExe_L, par.IndexCell);

                //设定ROI
                uCSetROI.Init(baseUCCamera, (ParLinesDotsPosNegInspect)par, cellHObject_L, cellData_L, htResult);

                //设置输入输出
                uCSetInput.Init(par.g_ParInput, cellHObject_L);
                //uCOutputImageProcess.Init(par.g_ParOutput, par.g_BaseResult, cellExe_L, cellData_L, htResult);

                //基准值和结果
                baseUCStandard.Init((ParStdStraightLine)((ParLinesDotsPosNegInspect)par).g_ParStd, ResultToStd, ShowStdImage);

                //设置其他
                //uCSetOthers.Init(par, cellHObject_L);

                //测试运行
                uCTestRun.Init(baseUCCamera, par, cellExe_L, cellHObject_L, htResult, uCResult);

                //显示参数
                ShowPar_Invoke();
            }
            catch (Exception ex)
            {
                Log.L_I.WriteError(NameClass, ex);
            }
            return(nameWin);
        }