コード例 #1
0
        public void CreateAndSaveItem(string strItem, string strVisionType, string strCamName, double dExposure, double dGain)
        {
            VisionSetpBase visionSetpBase = VisionMgr.GetInstance().GetItem(strItem);
            StepVisionInfo stepVisionInfo = new StepVisionInfo();

            if (visionSetpBase == null)
            {
                visionSetpBase = CreatVisonObjByType(strVisionType, strItem);
            }
            else
            {
                string strTypeName = "";
                //string strTypeName= GetChinseNameByVisionType(strItem);

                if (strVisionType != visionSetpBase.PrTyppeItem.ToString())
                {
                    visionSetpBase = CreatVisonObjByType(strVisionType, strItem);
                }
            }
            visionSetpBase.m_camparam.m_dGain         = dGain;
            visionSetpBase.m_camparam.m_dExposureTime = dExposure;
            visionSetpBase.m_camparam.m_strCamName    = strCamName;
            stepVisionInfo.CamParam   = visionSetpBase.m_camparam;
            stepVisionInfo.VisionType = visionSetpBase.GetType().ToString();
            VisionMgr.GetInstance().Add(strItem, visionSetpBase, stepVisionInfo);
            string strVisonItems = VisionMgr.GetInstance().CurrentVisionProcessDir + "VisionMgr.xml";

            if (File.Exists(strVisonItems))
            {
                File.Delete(strVisonItems);
            }

            VisionMgr.GetInstance().Save();
        }
コード例 #2
0
 private void roundButton_Add_Click(object sender, EventArgs e)
 {
     VisionProcssName = comboBox_SelVisionProcessType.Text;
     CamName          = comboBox_camSel.Text;
     Exposure         = textBox_ExposureTime.Text.ToDouble();
     Gain             = textBox_Gain.Text.ToDouble();
     ItemName         = textBox_ItemName.Text;
     nLightVal        = txtLightVal.Text.ToInt();
     if (Gain == 0 || Exposure == 0 || VisionProcssName == "" || ItemName == "")
     {
         MessageBox.Show("参数设置错误", "Err", MessageBoxButtons.OK, MessageBoxIcon.Error);
         return;
     }
     else
     {
         Close();
         Dispose();
         if (VisionMgr.GetInstance().GetItemNamesAndTypes().ContainsKey(ItemName))
         {
             MessageBox.Show($"{ItemName} 已经存在此项,重名了", "Err", MessageBoxButtons.OK, MessageBoxIcon.Error);
             return;
         }
         Type ty = AssemblyOperate.GetTypeFromAssemblyByDescrition(VisionProcssName, typeof(VisionSetpBase));
         visionSetpBase = Activator.CreateInstance(ty, ItemName) as VisionSetpBase;
         visionSetpBase.m_camparam.m_dExposureTime = Exposure;
         visionSetpBase.m_camparam.m_dGain         = Gain;
         visionSetpBase.m_camparam.m_strCamName    = CamName;
         StepVisionInfo stepVisionInfo = new StepVisionInfo();
         stepVisionInfo.CamParam   = visionSetpBase.m_camparam;
         stepVisionInfo.VisionType = ty.ToString();
         stepVisionInfo.nLightVal  = nLightVal;
         VisionMgr.GetInstance().Add(ItemName, visionSetpBase, stepVisionInfo);
         VisionMgr.GetInstance().Save();
         this.DialogResult = DialogResult.Yes;
     }
 }