private void layoutView1_DoubleClick(object sender, EventArgs e) { int nIndex = layoutView1.FocusedRowHandle; CardTargetItem itemInfo = mCardVehResultList[nIndex]; //VehicleCompareResult vehicleRstObj = mSortedVehResult.ElementAt(nIndex);//.[nIndex]; VehicleCompareResult vehicleRstObj = mSortedVehResultList.GetRange(nStart, nEnd)[nIndex]; Rectangle rect = new Rectangle(); string[] vehicleLocation = vehicleRstObj.Clwz.Split(','); if (vehicleLocation.Length == 4) { rect.X = Convert.ToInt32(vehicleLocation[0]); rect.Y = Convert.ToInt32(vehicleLocation[1]); rect.Width = Convert.ToInt32(vehicleLocation[2]); rect.Height = Convert.ToInt32(vehicleLocation[3]); } if (null == frmTargetDetial) { frmTargetDetial = new FrmTargetDetail(); } else if (null != frmTargetDetial) { if (frmTargetDetial.IsDisposed) { frmTargetDetial = new FrmTargetDetail(); } } frmTargetDetial.SetImagePath(vehicleRstObj.ImagePath); //frmTargetDetial.SetTargetModel(targetInfoList[nIndex]); //frmTargetDetial.SetDetailInfo(itemInfo.toString()); frmTargetDetial.SetTargetRect(rect); frmTargetDetial.Show(); frmTargetDetial.BringToFront(); }
private void SearchFaceMongo() { mCardVehResultList.Clear(); mSortedVehResult.Clear(); mSortedVehResultList.Clear(); HVehicleQuery vehicleQuery = new HVehicleQuery(); vehicleQuery.timeStart = Convert.ToDateTime(dtpStrartTime.EditValue.ToString()).ToString("yyyy-MM-dd HH:mm:ss"); vehicleQuery.timeEnd = Convert.ToDateTime(dtpEndTime.EditValue.ToString()).ToString("yyyy-MM-dd HH:mm:ss"); vehicleQuery.queryClpp = mQueryClpp; LogHelper.WriteLog(typeof(FrmVehSearchByPic), "count start"); //int mTotalVehCount = Convert.ToInt32(VehicleMongoDAL.GetInstance().GetVehicleCount()); int mTotalVehCount = Convert.ToInt32(VehicleMongoDAL.GetInstance().GetVehicleCount(vehicleQuery)); LogHelper.WriteLog(typeof(FrmVehSearchByPic), "count end " + mTotalVehCount); int RecordsPerPage = 1000; int pageCount = mTotalVehCount / RecordsPerPage; if (mTotalVehCount % RecordsPerPage == 0) { pageCount = mTotalVehCount / RecordsPerPage; } else { pageCount = mTotalVehCount / RecordsPerPage + 1; } vehicleQuery.PageSize = RecordsPerPage; LogHelper.WriteLog(typeof(FrmVehSearchByPic), "query start"); //ObjectId fistId = VehicleMongoDAL.GetInstance().GetVehicleFirstId(vehicleQuery); for (int i = 1; i <= pageCount; i++) { LogHelper.WriteLog(typeof(FrmVehSearchByPic), "mongo start" + i); //List<FaceObject> TempFaceObjList = FaceMongoDAL.GetInstance().GetFaceList(i, RecordsPerPage); vehicleQuery.PageNumber = i; //List<VehicleObject> TempFaceObjList = VehicleMongoDAL.GetInstance().GetVehicleListGtId(fistId, vehicleQuery); List <VehicleObject> TempFaceObjList = VehicleMongoDAL.GetInstance().GetVehicleList(vehicleQuery); /* * if (null != TempFaceObjList) * { * if (TempFaceObjList.Count > 0) * { * fistId = TempFaceObjList[TempFaceObjList.Count - 1].Id; * } * }*/ LogHelper.WriteLog(typeof(FrmVehSearchByPic), "mongo end"); double progress = (double)i / (double)pageCount * 100; try { this.Invoke(new DelegateProgress(ShowProgress), Convert.ToInt32(progress)); } catch { } foreach (var faceObj in TempFaceObjList) { if (mVehSearchResult.Veh[nSelectedIndex].Cbdm != faceObj.vehicle.Cbdm) { continue; } VehicleCompareResult faceResult = new VehicleCompareResult(); float score = 0;// (float)VehSimCos.HCARREGSimCos(mSearchFaceBase64, faceObj.vehicle.Cltzxx);//Feature.Compare(mSearchFaceBase64, faceObj.FaceFeature); faceResult.Score = score; faceResult.CreateTime = faceObj.CreateTime.AsDateTime.AddHours(8).ToString("yyyy-MM-dd HH:mm:ss"); faceResult.ImagePath = faceObj.ImagePath; faceResult.Clpp = faceObj.vehicle.Clpp; faceResult.Clwz = faceObj.vehicle.Clwz; faceResult.Cphm = faceObj.vehicle.Hphm; mSortedVehResult.Add(faceResult); if (mSortedVehResult.Count > 100) { mSortedVehResult.Remove(mSortedVehResult.Last()); } } } mSortedVehResultList = mSortedVehResult.ToList(); LogHelper.WriteLog(typeof(FrmVehSearchByPic), "query end"); try { this.Invoke(new DelegateBindHandler(BindDataSource)); } catch { } }