private void image_MouseLeftButtonDown(object sender, PointerRoutedEventArgs e) { lChartPhoto1.getDrawObjectCanvas().PointerMoved -= (image_MouseMove); lChartPhoto1.getDrawObjectCanvas().PointerPressed -= (image_MouseLeftButtonDown); Select.Foreground = Disactive; WriteableBitmap b = lChartPhoto1.Photo; if (b == null) { return; } int p = Convert.ToInt32(e.GetCurrentPoint(lChartPhoto1).Position.X / lChartPhoto1.ActualWidth * (b).PixelWidth); DrawGraphic dg = new DrawGraphic(canvasBright); ISO12233ExChart isoc = new ISO12233ExChart(); canvasBright.Children.Clear(); List <int> al = isoc.getImageGrayVLine(b, p); dg.DrawBrightLines(al); if (!lChartPhoto1.getDrawObjectCanvas().Children.Contains(Selectl)) { lChartPhoto1.getDrawObjectCanvas().Children.Add(Selectl); Selectl.Fill = new SolidColorBrush(Colors.Green); Selectl.StrokeThickness = 3; Selectl.Stroke = Selectl.Fill; } PhotoTestParameter ptp = new PhotoTestParameter(); textBlockCurrentPercent.Text = ptp.getContrast(al).ToString(); }
public void DrawDispersivenessCurve(WriteableBitmap b, string ChartType)//绘制色散分析图 { this.ChartType = ChartType; List <List <int> > al = new List <List <int> >(); WriteableBitmap subB; if (ChartType == "XMark") { XMarkChart x = new XMarkChart(b); subB = x.getAreaHEdge(); PhotoTestParameter xm = new PhotoTestParameter(); al = xm.getCurveVDispersiveness(subB); } if (ChartType == "ISO12233") { ISO12233ExChart x = new ISO12233ExChart(b); subB = x.getAreaHEdge(); PhotoTestParameter xm = new PhotoTestParameter(); al = xm.getCurveHDispersiveness(b); } DrawGraphic dg = new DrawGraphic(DrawCanvas); dg.DrawX(); List <double> MarkList = new List <double>(); for (int i = 0; i < 101; i = i + 20) { 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 <double> ral, gal, bal; ral = SilverlightLFC.common.Environment.getDoubleList <int>(al[0]); gal = SilverlightLFC.common.Environment.getDoubleList <int>(al[1]); bal = SilverlightLFC.common.Environment.getDoubleList <int>(al[2]); dg.ForeColor = Colors.Blue; dg.DrawLines(bal); dg.ForeColor = Colors.Red; dg.DrawLines(ral); dg.ForeColor = Colors.Green; dg.DrawLines(gal); dg.DrawTitle("色散"); }
private void buttonClose_Click(object sender, RoutedEventArgs e) { stackBitmapList.Children.Clear(); bl.Clear(); dg = null; lChartPhotoBadPix.Clear(); lChartPhotoBadPix = null; ptp = null; Panel p = this.Parent as Panel; if (p != null) { p.Children.Remove(this); } }
private void buttonClose_Click(object sender, RoutedEventArgs e) { stackBitmapList.Children.Clear(); bl.Clear(); DrawCanvas.Children.Clear(); lChartPhoto1.Clear(); photoTestToolbar1 = null; dg = null; ptp = null; Panel p = this.Parent as Panel; if (p != null) { p.Children.Remove(this); } }