void li_MouseLeftButtonDown(object sender, PointerRoutedEventArgs e) { Image im = sender as Image; int no = Convert.ToInt32(im.Tag); lChartPhoto1.Photo = (im.Source as WriteableBitmap); canvasBright.Children.Clear(); DrawGraphic dgb = new DrawGraphic(canvasBright); DCTestLibrary.PhotoTest pt = new DCTestLibrary.PhotoTest(); List <int> hl = pt.getImageGrayHLine(im.Source as WriteableBitmap, (im.Source as WriteableBitmap).PixelHeight / 2); dgb.DrawBrightLines(hl); List <List <decimal> > al = new List <List <decimal> >(); al = ptp.getCurveWaveQ(im.Source as WriteableBitmap, no); DrawCanvas.Children.Clear(); DrawGraphic dg = new DrawGraphic(DrawCanvas); dg.DrawX(); List <double> MarkList = new List <double>(); int step = (al[0]).Count / 5; for (int i = 0; i < al[0].Count; i = i + step) { MarkList.Add(i); } dg.DrawXMark(MarkList); MarkList.Clear(); for (int i = 0; i < 255; i = i + 40) { MarkList.Add(i); } dg.DrawY(); dg.DrawYMark(MarkList); List <decimal> Sal, Val; Sal = al[0]; Val = al[1]; dg.ForeColor = Colors.Blue; dg.DrawLines(SilverlightLFC.common.Environment.getDoubleList <decimal>(Sal)); dg.ForeColor = Colors.Red; dg.DrawLines(SilverlightLFC.common.Environment.getDoubleList <decimal>(Val)); dg.DrawTitle("成像品质"); textBlockCurrentBrightDis.Text = ptp.getWaveQ(im.Source as WriteableBitmap, no).ToString(); }
void image_MouseLeftButtonDown(object sender, PointerRoutedEventArgs e) { if (lChartPhoto1.Photo == null) { return; } double h = e.GetCurrentPoint(lChartPhoto1).Position.Y; int H = Convert.ToInt32((lChartPhoto1.Photo).PixelHeight * (1 - h / lChartPhoto1.Height)); canvasBright.Children.Clear(); DrawGraphic dgb = new DrawGraphic(canvasBright); DCTestLibrary.PhotoTest pt = new DCTestLibrary.PhotoTest(); List <int> hl = pt.getImageGrayHLine((lChartPhoto1.Photo), H); dgb.DrawBrightLines(hl); //throw new NotImplementedException(); }
public void Test(List <WriteableBitmap> b) { if (b.Count == 0 || b == null) { return; } bl = b; try { HB.Photo = (b[1]); VB.Photo = (b[2]); xt = new XMarkChart(); decimal d = xt.getBrightChanges(b[0]);//原始 textBoxBrightChanges.Text = d.ToString(); textBoxBB.Text = xt.ProcessInfor["BrightChanges_BorderBright"].ToString(); textBoxCB.Text = xt.ProcessInfor["BrightChanges_CBright"].ToString(); LT.Text = xt.ProcessInfor["BrightChanges_LT"].ToString(); LB.Text = xt.ProcessInfor["BrightChanges_LB"].ToString(); RT.Text = xt.ProcessInfor["BrightChanges_RT"].ToString(); RB.Text = xt.ProcessInfor["BrightChanges_RB"].ToString(); List <int> hl, vl; DCTestLibrary.PhotoTest pt = new DCTestLibrary.PhotoTest(); hl = pt.getImageGrayHLine(b[1], b[1].PixelHeight / 2); vl = pt.getImageGrayVLine(b[2], b[2].PixelWidth / 2); dg.ForeColor = Colors.Blue; dg.DrawBrightLines(hl); dg.ForeColor = Colors.Red; dg.DrawBrightLines(vl); } catch (Exception xe) //未知的异常 { if (xe is LFCException) //已经是系统约定的错误类型,直接往上抛 { SilverlightLFC.common.Environment.ShowMessage(xe.Message); } else { SilverlightLFC.common.Environment.ShowMessage("测试错误,请检查照片"); } } }
private void HB_MouseLeftButtonDown(object sender, PointerRoutedEventArgs e) { var im = sender as LynxPhotoViewControl; selectedImage = im; //HB.Active(); //VB.DeActive(); //photoTestToolbar1.setTarget(HB); WriteableBitmap b = im.Photo; if (b != null) { DCTestLibrary.PhotoTest pt = new DCTestLibrary.PhotoTest(); Point?p = xt.PointToPix(b, im, e.GetCurrentPoint(im).Position, false); if (p == null) { return; } dg.DrawBrightLines(pt.getImageGrayHLine(b, Convert.ToInt32(p.Value.Y))); } }
private void HB_PointerPressed(object sender, PointerRoutedEventArgs e) { LChartPhoto im = sender as LChartPhoto; selectedImage = im; HB.Active(); VB.DeActive(); photoTestToolbar1.setTarget(HB); WriteableBitmap b = im.getPhoto(); if (b != null) { DCTestLibrary.PhotoTest pt = new DCTestLibrary.PhotoTest(); Point?p = xt.PointToPix(b, im, e.GetCurrentPoint(im).Position, false); if (p == null) { return; } dg.DrawBrightLines(pt.getImageGrayHLine(b, Convert.ToInt32(p.Value.Y))); } }