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();
        }
Esempio n. 2
0
        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("色散");
        }
Esempio n. 3
0
        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);
            }
        }
Esempio n. 4
0
        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);
            }
        }