Esempio n. 1
0
        private void dataGridView1_Click(object sender, EventArgs e)
        {
            DisplayMatchResult();

            if (dataGridView1.SelectedRows.Count > 0)
            {
                int       index     = dataGridView1.SelectedRows[0].Index;
                HHomMat2D hHomMat2D = new HHomMat2D();
                hHomMat2D.VectorAngleToRigid(0, 0, 0, nCCModel.OutputResult.Row[index].D, nCCModel.OutputResult.Col[index].D, nCCModel.OutputResult.Angle[index].D);
                hHomMat2D = hHomMat2D.HomMat2dTranslateLocal(-nCCModel.ModelRegion.Row, -nCCModel.ModelRegion.Column);

                HRegion region = nCCModel.ModelRegion.AffineTransRegion(hHomMat2D, "constant");
                hWndCtrller.ChangeGraphicSettings("Color", "red");
                hWndCtrller.AddIconicVar(region);

                HObject cross;
                HOperatorSet.GenCrossContourXld(out cross, nCCModel.OutputResult.Row[index].D, nCCModel.OutputResult.Col[index].D, 16, 0);
                hWndCtrller.AddIconicVar(cross);

                hWndCtrller.Repaint();
            }
        }
        private void DisplayModelControur()
        {
            hWndCtrller.AddIconicVar(Model.ModelImg);
            hWndCtrller.ChangeGraphicSettings("Color", "blue");
            hWndCtrller.AddIconicVar(Model.SearchRegion);
            hWndCtrller.ChangeGraphicSettings("Color", "green");
            hWndCtrller.ChangeGraphicSettings("DrawMode", "margin");

            HHomMat2D mat2D = new HHomMat2D();

            mat2D.VectorAngleToRigid(0.0, 0.0, 0.0, Model.ModelImgRow, Model.ModelImgCol, Model.ModelimgAng);
            HXLDCont cont = Model.GetModelCont();

            if (cont != null)
            {
                double row, col;
                Model.shapeModel.GetShapeModelOrigin(out row, out col);
                mat2D = mat2D.HomMat2dTranslateLocal(row, col);

                hWndCtrller.AddIconicVar(cont.AffineTransContourXld(mat2D));
                cont.Dispose();
            }
        }
Esempio n. 3
0
        private void DisplayMatchResult()
        {
            hWndCtrller.AddIconicVar(nCCModel.InputImg);
            hWndCtrller.ChangeGraphicSettings("Color", "blue");
            hWndCtrller.AddIconicVar(nCCModel.SearchRegion);
            hWndCtrller.ChangeGraphicSettings("Color", "green");
            hWndCtrller.ChangeGraphicSettings("DrawMode", "margin");
            for (int i = 0; i < nCCModel.OutputResult.Count; i++)
            {
                HHomMat2D hHomMat2D = new HHomMat2D();
                hHomMat2D.VectorAngleToRigid(0, 0, 0, nCCModel.OutputResult.Row[i].D, nCCModel.OutputResult.Col[i].D, nCCModel.OutputResult.Angle[i].D);
                hHomMat2D = hHomMat2D.HomMat2dTranslateLocal(-nCCModel.ModelRegion.Row, -nCCModel.ModelRegion.Column);

                HRegion region = nCCModel.ModelRegion.AffineTransRegion(hHomMat2D, "constant");
                hWndCtrller.AddIconicVar(region);
            }

            if (nCCModel.OutputResult.Count > 0)
            {
                HObject cross;
                HOperatorSet.GenCrossContourXld(out cross, nCCModel.OutputResult.Row, nCCModel.OutputResult.Col, 16, 0);
                hWndCtrller.AddIconicVar(cross);
            }
        }