Exemplo n.º 1
0
        static async Task Main(string[] args)
        {
            //Порядок действия гуя
            //1. Инициализировать класс
            //2. Получить набор вариантов
            //3. Выбрать вариант
            //4. Получить расчет по выбранному варианту
            //5. Отобразить результаты на форме

            string path = Directory.GetCurrentDirectory() + "/JsonData";

            await MatrixDataInitializer.GenerateAsync();

            Engine engine = new Engine(path);
            IEnumerable <Items> combinations = engine.GetFilteredCombinations();
            //выбор необходимой
            // RawDataMatrix result = engine.PerformCombination(combinations.Skip(50).First().Name);
            RawDataMatrix result = engine.PerformCombination("16666");

            Console.WriteLine(new string('-', 50));
            Console.WriteLine(result);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Действие на изменение комбинации матриц
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void DataGridCombinations_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            var val = (DataGridCombinations.SelectedItem as Items).Name;

            if (engine != null & val != null)
            {
                Task <List <MismatchesCoordList> > task = new Task <List <MismatchesCoordList> >(() =>
                {
                    List <MismatchesCoordList> allCoords = new List <MismatchesCoordList>();
                    RawDataMatrix result           = engine.PerformCombination(val.ToString());
                    allCoords                      = engine.GetMatrixDifference();
                    MismatchesCoordList mainCoords = result.GetMismatches(engine.Etalon);
                    mainCoords.Gamma               = engine.Gamma;
                    allCoords.Add(mainCoords);
                    return(allCoords);
                });

                task.Start();

                UnitedFramesComponent comp = new UnitedFramesComponent(myCanvas, 10, 38, 38);
                comp.DrawData(task.Result);
            }
        }