private async void SpecificColorTriangleDetection(object ob) { if (IsSpecificColorTriangleDetecionChecked) { SpecificTriangleDetector = new ColoredTriangleDetector() { Color = ColorParam, Picture = new Picture(OriginalPictureHost), }; var task = Task.Factory.StartNew(() => { _triangleDeteciton = new TriangleDetection(SpecificTriangleDetector); _triangleDeteciton.Detect(); _triangleDeteciton.Draw(); }); await task; } else { var task = Task.Run(() => { SpecificTriangleDetector = new ColoredTriangleDetector() { Picture = new Picture(OriginalPictureHost) }; }); } }
private async void LoadImage(object ob) { var task = Task.Factory.StartNew(() => { Microsoft.Win32.OpenFileDialog openFileDialog = new Microsoft.Win32.OpenFileDialog(); openFileDialog.Filter = "PNG Files (*.png)|*.png|JPEG Files (*.jpeg)|*.jpeg|JPG Files (*.jpg)|"; if (openFileDialog.ShowDialog() == true && openFileDialog.CheckPathExists) { OriginalPictureHost = new Picture(openFileDialog.FileName); Path = openFileDialog.FileName; IsSpecificColorTriangleDetecionChecked = false; //TO DO: //that can be new EmptyTriangleDetector() object --> SpecificTriangleDetector = new ColoredTriangleDetector() { Picture = new Picture(openFileDialog.FileName) }; } _specificColorTriangleDetectionCommad.RaiseCanExecuteChanged(); }); await task; }