/// <summary>
        /// 批量删除数据
        /// </summary>
        private void OnDelete()
        {
            string itemsAppend = hV.Value.Trim();

            if (string.IsNullOrEmpty(itemsAppend))
            {
                MessageBox.Messager(this.Page, this.Page.Controls[0], "请至少勾选一行进行操作", "错误提醒", "error");
                return;
            }

            SitePoint bll = new SitePoint();

            string[]      itemsAppendArr = itemsAppend.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
            List <object> list           = itemsAppendArr.ToList <object>();

            if (bll.DeleteBatch(list))
            {
                MessageBox.MessagerShow(this.Page, this.Page.Controls[0], "操作成功");
                Bind();
            }
            else
            {
                MessageBox.Messager(this.Page, this.Page.Controls[0], "操作失败", "系统提示");
            }
        }
        private void Bind()
        {
            //查询条件
            GetSearchItem();

            int       totalCount = 0;
            SitePoint bll        = new SitePoint();

            rpData.DataSource = bll.GetList(pageIndex, pageSize, out totalCount, sqlWhere, parms == null ? null : parms.ToArray());
            rpData.DataBind();
            hTotal.Value = totalCount.ToString();
        }
예제 #3
0
        private void OnSave()
        {
            string sName = txtName.Value.Trim();

            if (string.IsNullOrWhiteSpace(sName))
            {
                MessageBox.Messager(this.Page, Page.Controls[0], "有“*”标识的为必填项,请检查");
                return;
            }
            string  sPointNum = txtPointNum.Value.Trim();
            decimal pointNum  = 0;

            if (!decimal.TryParse(sPointNum, out pointNum))
            {
                MessageBox.Messager(this.Page, Page.Controls[0], "积分数输入值格式不正确,请检查");
                return;
            }
            string sRemark = txtRemark.Value.Trim();

            SitePointInfo model = new SitePointInfo();

            model.PointName = sName;
            model.PointNum  = pointNum;
            model.Remark    = sRemark;

            int       effect = -1;
            SitePoint bll    = new SitePoint();

            if (!gId.Equals(Guid.Empty))
            {
                model.Id = gId;
                effect   = bll.Update(model);
            }
            else
            {
                effect = bll.Insert(model);
            }

            if (effect == 110)
            {
                MessageBox.Messager(this.Page, Page.Controls[0], "已存在相同记录", "系统提示", "error");
                return;
            }
            if (effect > 0)
            {
                MessageBox.MessagerShow(this.Page, Page.Controls[0], "操作成功");
            }
            else
            {
                MessageBox.Messager(this.Page, Page.Controls[0], "操作失败,请检查", "系统提示", "error");
            }
        }
예제 #4
0
        private void 定位点ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            SitePoint site = new SitePoint();

            int num = dataGridView1.CurrentRow.Index;

            site = Database.Product.Inst.Stickdata.TrayData.ProductList[product_num].SiteList[num].Clone();
            TaskMain.move.targetPos.X = site.X;
            TaskMain.move.targetPos.Y = site.Y;
            TaskMain.move.Start();

            Point_revise.X = site.X;
            Point_revise.Y = site.Y;
        }
예제 #5
0
 private void Bind()
 {
     if (!gId.Equals(Guid.Empty))
     {
         SitePoint     bll   = new SitePoint();
         SitePointInfo model = bll.GetModel(gId);
         if (model != null)
         {
             txtName.Value     = model.PointName;
             txtPointNum.Value = model.PointNum.ToString();
             txtRemark.Value   = model.Remark;
         }
     }
 }
예제 #6
0
        private ProductDef MarkCaculate(ProductDef product)
        {
            ProductDef pp = product.Clone();

            pp.SiteList.Clear();
            for (int i = 0; i < product.SiteList.Count; i++)
            {
                SitePoint site = new SitePoint();
                site = product.SiteList[i].Clone();

                HalconDotNet.HTuple x;
                HalconDotNet.HTuple y;
                VisionProject.Instance.Tool.PointLocation.AffineTransPoint2d(
                    product.SiteList[i].X,
                    product.SiteList[i].Y,
                    out x, out y);
                site.X = x[0].F;
                site.Y = y[0].F;
                pp.SiteList.Add(site);
            }
            return(pp);
        }
예제 #7
0
        private void 添加点ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            int type = 0;

            if (Database.Product.Inst.Stickdata.TrayData.ProductList.Count < 1)
            {
                ProductDef product = new ProductDef();
                Database.Product.Inst.Stickdata.TrayData.ProductList.Add(product);
                product_num = 0;
                RefreshTreeView();
            }

            PointF4 point = new PointF4();
            HTuple  X     = new HTuple();
            HTuple  Y     = new HTuple();

            if (TaskMain.sticklogic.markscan.GetDone &&
                TaskMain.sticklogic.markscan.MarkResult.Count > 0 &&
                TaskMain.sticklogic.markscan.MarkResult.Count >= (product_num * 2 + 1))
            {
                //VisionProject.Instance.SetBenchmark1(Database.Product.Inst.Stickdata.TrayData.ProductList[product_num].MarkPoint[0].X,
                //    Database.Product.Inst.Stickdata.TrayData.ProductList[product_num].MarkPoint[0].Y,
                //    Database.Product.Inst.Stickdata.TrayData.ProductList[product_num].MarkPoint[0].R,
                //    0, Database.Product.Inst.Stickdata.TrayData.MarkMode == 0 ? false : true);

                //VisionProject.Instance.SetBenchmark1(Database.Product.Inst.Stickdata.TrayData.ProductList[product_num].MarkPoint[1].X,
                //    Database.Product.Inst.Stickdata.TrayData.ProductList[product_num].MarkPoint[1].Y,
                //    Database.Product.Inst.Stickdata.TrayData.ProductList[product_num].MarkPoint[1].R,
                //    1, Database.Product.Inst.Stickdata.TrayData.MarkMode == 0 ? false : true);


                //VisionProject.Instance.SetBenchmark2(TaskMain.sticklogic.markscan.MarkResult[product_num * 2].X,
                //TaskMain.sticklogic.markscan.MarkResult[product_num * 2].Y,
                //    TaskMain.sticklogic.markscan.MarkResult[product_num * 2].R,
                //    0, Database.Product.Inst.Stickdata.TrayData.MarkMode == 0 ? false : true);

                //VisionProject.Instance.SetBenchmark2(TaskMain.sticklogic.markscan.MarkResult[product_num * 2 + 1].X,
                //    TaskMain.sticklogic.markscan.MarkResult[product_num * 2 + 1].Y,
                //    TaskMain.sticklogic.markscan.MarkResult[product_num * 2 + 1].R,
                //    1, Database.Product.Inst.Stickdata.TrayData.MarkMode == 0 ? false : true);

                //VisionProject.Instance.ReverseTransPoint2d(DeviceRsDef.Axis_X.currPos, DeviceRsDef.Axis_Y.currPos,
                //    out X, out Y, Database.Product.Inst.Stickdata.TrayData.MarkMode == 0 ? false : true);
            }
            else
            {
                MessageBox.Show("先扫描mark点");
                return;
            }

            SitePoint site = new SitePoint();

            site.X             = X[0].F;
            site.Y             = Y[0].F;
            site.Z             = 1f;
            site.R             = 0;
            site.LableType     = type;
            site.Product_num   = product_num;
            site.SitePoint_num = Database.Product.Inst.Stickdata.TrayData.ProductList[product_num].SiteList.Count;

            Database.Product.Inst.Stickdata.TrayData.ProductList[product_num].SiteList.Add(site);
            RefreshTableList();
        }
예제 #8
0
        public void MatrixArrayList(PointF3 p1, PointF3 p2, PointF3 p3, int row, int column, int DripDirection)
        {
            float deltaX1, deltaY1, deltaX2, deltaY2;

            if (row <= 0 || column <= 0 || (row == 1 && column == 1))
            {
                return;
            }

            if (row > 1)
            {
                deltaX1 = (p1.X - p2.X) / (row - 1);
                deltaY1 = (p1.Y - p2.Y) / (row - 1);
            }
            else
            {
                deltaX1 = p1.X - p2.X;
                deltaY1 = p1.Y - p2.Y;
            }

            if (column > 1)
            {
                deltaX2 = (p3.X - p2.X) / (column - 1);
                deltaY2 = (p3.Y - p2.Y) / (column - 1);
            }
            else
            {
                deltaX2 = p3.X - p2.X;
                deltaY2 = p3.Y - p2.Y;
            }


            List <PointF> termlist = new List <PointF>();

            #region 无隔离
            if (DripDirection == 0)                  //横向优先
            {
                for (int i = 0; i < row; i++)        //行
                {
                    for (int j = 0; j < column; j++) //列
                    {
                        PointF stickPoint = new PointF();
                        if (i % 2 == 0)
                        {
                            stickPoint.X = p2.X + deltaX1 * j + deltaX2 * i;
                            stickPoint.Y = p2.Y + deltaY1 * j + deltaY2 * i;
                        }
                        else
                        {
                            stickPoint.X = p2.X + deltaX1 * (column - 1 - j) + deltaX2 * i;
                            stickPoint.Y = p2.Y + deltaY1 * (column - 1 - j) + deltaY2 * i;
                        }

                        termlist.Add(stickPoint);
                    }
                }
            }
            else if (DripDirection == 1)          //纵向优先
            {
                for (int i = 0; i < column; i++)  //列
                {
                    for (int j = 0; j < row; j++) //行
                    {
                        PointF stickPoint = new PointF();
                        if (i % 2 == 0)
                        {
                            stickPoint.X = p2.X + deltaX2 * j + deltaX1 * i;
                            stickPoint.Y = p2.Y + deltaY2 * j + deltaY1 * i;
                        }
                        else
                        {
                            stickPoint.X = p2.X + deltaX2 * (row - 1 - j) + deltaX1 * i;
                            stickPoint.Y = p2.Y + deltaY2 * (row - 1 - j) + deltaY1 * i;
                        }
                        termlist.Add(stickPoint);
                    }
                }
            }
            #endregion


            tempPoint = new List <SitePoint>();

            for (int i = 0; i < termlist.Count; i++)
            {
                SitePoint site = new SitePoint();
                site.X = termlist[i].X;
                site.Y = termlist[i].Y;
                tempPoint.Add(site);
            }
        }