public void Init(FaceAlarmInfoV3_1 obj)
        {
            System.Drawing.Rectangle rect = obj.FacePosition;
            System.Drawing.Image     img  = new System.Drawing.Bitmap(obj.FacePosition.Width, obj.FacePosition.Height);
            Graphics g = Graphics.FromImage(img);

            g.DrawImage(DataModel.Common.GetImage(obj.OriFacePicPath), new Rectangle(0, 0, obj.FacePosition.Width, obj.FacePosition.Height), rect, GraphicsUnit.Pixel);
            g.Dispose();
            pictureBox28.Image = img;

            if (obj.BlackListPicInfo.Count > 0)
            {
                pictureBox5.Image = DataModel.Common.GetImage(obj.BlackListPicInfo.ElementAt(0).Key.PictureUrl);
                labelX4.Text      = obj.BlackListPicInfo.ElementAt(0).Value + "%";
            }
            if (obj.BlackListPicInfo.Count > 1)
            {
                pictureBox6.Image = DataModel.Common.GetImage(obj.BlackListPicInfo.ElementAt(1).Key.PictureUrl);
                labelX5.Text      = obj.BlackListPicInfo.ElementAt(1).Value + "%";
            }
            if (obj.BlackListPicInfo.Count > 2)
            {
                pictureBox7.Image = DataModel.Common.GetImage(obj.BlackListPicInfo.ElementAt(2).Key.PictureUrl);
                labelX6.Text      = obj.BlackListPicInfo.ElementAt(2).Value + "%";
            }
            dateTimeInput1.Value   = obj.BeginTime;
            dateTimeInput2.Value   = obj.EndTime;
            textBoxCameraName.Text = obj.CameraID;
            textBoxCameraID.Text   = obj.BlackListHandle.ToString();
            pictureZoomBox1.Image  = DataModel.Common.Overlay(DataModel.Common.GetImage(obj.OriFacePicPath), obj.FacePosition);
        }
Пример #2
0
        void WSDataReceiveViewModel_FaceAlarmReceived(FaceAlarmInfoV3_1 obj)
        {
            if (InvokeRequired)
            {
                this.Invoke(new Action <FaceAlarmInfoV3_1>(WSDataReceiveViewModel_FaceAlarmReceived), obj);
            }
            else
            {
                WinFormAppUtil.Controls.PictureBoxEx p = new WinFormAppUtil.Controls.PictureBoxEx();
                p.Size = new System.Drawing.Size(100, 100);

                System.Drawing.Rectangle rect = obj.FacePosition;
                System.Drawing.Image     img  = new System.Drawing.Bitmap(obj.FacePosition.Width, obj.FacePosition.Height);
                Graphics g = Graphics.FromImage(img);
                g.DrawImage(DataModel.Common.GetImage(obj.OriFacePicPath), new Rectangle(0, 0, obj.FacePosition.Width, obj.FacePosition.Height), rect, GraphicsUnit.Pixel);
                g.Dispose();
                p.BorderStyle       = BorderStyle.FixedSingle;
                p.Image             = img;
                p.Tag               = obj;
                p.Margin            = new System.Windows.Forms.Padding(3);
                p.MouseDoubleClick += p_MouseDoubleClick;
                flowLayoutPanel1.Controls.Add(p);
                ReceivedCount++;
                labelCountInfo.Text = "收到报警记录数 " + ReceivedCount + " 条";
            }
        }
Пример #3
0
 public void ShowResult(FaceAlarmInfoV3_1 record)
 {
     if (InvokeRequired)
     {
         Invoke(new Action <FaceAlarmInfoV3_1>(ShowResult), record);
     }
     else
     {
         // 相机号
         labelX1.ForeColor = Color.Black;
         labelX1.Text      = record.CameraID;
         labelX2.Text      = record.BeginTime.ToString();
         pictureBox1.Image = Common.GetImage(record.OriFacePicPath);
         System.Drawing.Rectangle rect = record.FacePosition;
         System.Drawing.Image     img  = new System.Drawing.Bitmap(record.FacePosition.Width, record.FacePosition.Height);
         Graphics g = Graphics.FromImage(img);
         g.DrawImage(DataModel.Common.GetImage(record.OriFacePicPath), new Rectangle(0, 0, record.FacePosition.Width, record.FacePosition.Height), rect, GraphicsUnit.Pixel);
         g.Dispose();
         pictureBox1.Image = img;
     }
 }
        private void DoReceiveSMS_MSG_FACE_ALARM_DATA_NOTIFY(XmlNode itemData)
        {
            System.Xml.XmlNode itemCameraCode = itemData.SelectSingleNode("CameraID");
            string             CameraID       = itemCameraCode.InnerXml;

            System.Xml.XmlNode itemOriFacePicPath = itemData.SelectSingleNode("OriFacePicPath");
            string             OriFacePicPath     = itemOriFacePicPath.InnerXml;

            System.Xml.XmlNode       itemFacePosition = itemData.SelectSingleNode("FacePosition");
            string[]                 faceposition     = itemFacePosition.InnerXml.Split(',');
            System.Drawing.Rectangle FacePosition     = new System.Drawing.Rectangle(Convert.ToInt32(faceposition[0])
                                                                                     , Convert.ToInt32(faceposition[1])
                                                                                     , Convert.ToInt32(faceposition[2])
                                                                                     , Convert.ToInt32(faceposition[3]));
            FacePosition = new System.Drawing.Rectangle(FacePosition.X - FacePosition.Width, FacePosition.Y - FacePosition.Height, 3 * FacePosition.Width, 5 * FacePosition.Height);

            System.Xml.XmlNode itemStartTimeSec = itemData.SelectSingleNode("BeginTime");
            uint     StartTimeSec = Convert.ToUInt32(itemStartTimeSec.InnerXml);
            DateTime BeginTime    = DataModel.Common.ZEROTIME.AddSeconds(StartTimeSec);

            System.Xml.XmlNode itemEndTimeSec = itemData.SelectSingleNode("EndTime");
            uint     EndTimeSec = Convert.ToUInt32(itemEndTimeSec.InnerXml);
            DateTime EndTime    = DataModel.Common.ZEROTIME.AddSeconds(EndTimeSec);

            List <FaceAlarmInfoV3_1> list = new List <FaceAlarmInfoV3_1>();

            foreach (System.Xml.XmlNode item in itemData.SelectNodes("AlarmList/AlarmInfo"))
            {
                FaceAlarmInfoV3_1  info = new FaceAlarmInfoV3_1();
                System.Xml.XmlNode itemBlackListHandle = item.SelectSingleNode("BlackListHandle");
                info.BlackListHandle = Convert.ToUInt32(itemBlackListHandle.InnerXml);
                info.CameraID        = CameraID;
                info.OriFacePicPath  = OriFacePicPath;
                info.FacePosition    = FacePosition;
                info.BeginTime       = BeginTime;
                info.EndTime         = EndTime;

                info.BlackListPicInfo = new Dictionary <BlackItem, uint>();
                foreach (System.Xml.XmlNode subitem in item.SelectNodes("BlackListPicInfo"))
                {
                    BlackItem          blpi = new BlackItem();
                    System.Xml.XmlNode itemPictureHandle = subitem.SelectSingleNode("PictureHandle");
                    blpi.PicHandel = Convert.ToUInt32(itemPictureHandle.InnerXml);
                    System.Xml.XmlNode itemPicturePath = subitem.SelectSingleNode("PicturePath");
                    blpi.PictureUrl = itemPicturePath.InnerXml;
                    System.Xml.XmlNode itemSimilar = subitem.SelectSingleNode("Similar");
                    uint Similar = Convert.ToUInt32(itemSimilar.InnerXml);
                    System.Xml.XmlNode itemPeopleName = subitem.SelectSingleNode("PeopleName");
                    blpi.Name = itemPeopleName.InnerXml;
                    System.Xml.XmlNode itemPeopleCard = subitem.SelectSingleNode("PeopleCard");
                    blpi.PeopleCard = itemPeopleCard.InnerXml;
                    System.Xml.XmlNode itemPeopleNation = subitem.SelectSingleNode("PeopleNation");
                    blpi.PeopleNation = ((E_PEOPLE_NATION)Convert.ToUInt32(itemPeopleNation.InnerXml)).ToString();
                    System.Xml.XmlNode itemPeopleAge = subitem.SelectSingleNode("PeopleAge");
                    blpi.PeopleAge = Convert.ToUInt32(itemPeopleAge.InnerXml);
                    System.Xml.XmlNode itemPeopleSex = subitem.SelectSingleNode("PeopleSex");
                    blpi.PeopleSex = (uint)(E_PEOPLE_SEX)Convert.ToUInt32(itemPeopleSex.InnerXml);
                    System.Xml.XmlNode itemPeopleHeight = subitem.SelectSingleNode("PeopleHeight");
                    blpi.PeopleHeight = Convert.ToUInt32(itemPeopleHeight.InnerXml);
                    System.Xml.XmlNode itemPeopleWeight = subitem.SelectSingleNode("PeopleWeight");
                    blpi.PeopleWeight = Convert.ToUInt32(itemPeopleWeight.InnerXml);
                    System.Xml.XmlNode itemBloodType = subitem.SelectSingleNode("BloodType");
                    blpi.BloodType = (uint)(E_PEOPLE_BLOODTYPE)Convert.ToUInt32(itemBloodType.InnerXml);
                    System.Xml.XmlNode itemAddress = subitem.SelectSingleNode("Address");
                    blpi.Address = itemAddress.InnerXml;

                    info.BlackListPicInfo.Add(blpi, Similar);
                }
                list.Add(info);
            }

            if (OnFaceAlarmReceived != null)
            {
                OnFaceAlarmReceived(list);
            }
        }