Exemple #1
0
        /*private void Picture2D_Click(object sender, EventArgs e)
         * {
         *  InputModule.InputText.KeyValues PictureMap = InputModule.InputText.EnterValues();
         *  Dictionary<string, Dictionary<string, double>> q = InputModule.Input.RunInputModule(PathToFile, PictureMap);
         *  List < Tuple<int[], int[], int[], int[], int[]> > lv = SorterModule.Sorter.ToDrawer(q, PictureMap, 128, 128, 0, 255, 255, 0);
         *  string s = "mapsnkeys//map5.png";
         *  DrawMap.DrawMap.PaintMap(ref s,lv.First().Item3, lv.First().Item4, lv.First().Item5, lv.First().Item1, lv.First().Item2);
         *
         * }*/
        private void Picture2D_Click(object sender, EventArgs e)
        {
            //  try
            //формат ARGB
            {
                if (int.TryParse(DialSet.Drob.Text, out x))
                {
                    ;
                }
                InputModule.InputText.KeyValues PictureMap = InputModule.InputText.EnterValues();
                Dictionary <string, Dictionary <string, double> >        q  = InputModule.Input.RunInputModule(PathToFile, PictureMap);
                List <Tuple <int[], int[], int[], int[], int[], int[]> > lv = SorterModule.Sorter.ToDrawer(q, PictureMap, (DialogSettings.blue.Length == 1));
                string           s = "mapsnkeys//map5.png";
                GraphABC.Picture p = new GraphABC.Picture(s);
                DrawMap.DrawMap.PaintMap(s, lv.First().Item3, lv.First().Item4, lv.First().Item5, lv.First().Item6, lv.First().Item1, lv.First().Item2);
                MainPicture.Image = Image.FromFile("Map stats.png");
                label1.Text       = InputModule.Input.nam;
                double[] a = SorterModule.Sorter.FormForLegend();
                Tuple <int[], int[], int[], int[]> ffl = SorterModule.Sorter.FormForLegendColors(DialogSettings.blue.Length == 1);
                DrawMap.DrawMap.LegendOfFile(ffl.Item1, ffl.Item2, ffl.Item3, ffl.Item4, a);
                LegendPicture.Load("LegendOfFile.png");
            }

            /*catch (Exception exception)
             * {
             *  MessageBox.Show("Не верные данные " + exception.Message);
             * }*/
        }
Exemple #2
0
        static void Main(string[] args)
        {
            InputModule.InputText.KeyValues PictureMap          = InputModule.InputText.EnterValues();
            Dictionary <string, Dictionary <string, double> > q = InputModule.Input.RunInputModule("C:\\Users\\Sokolov\\Documents\\Visual Studio 2017\\Projects\\InputModule\\InputModule\\Test.xlsx", PictureMap);

            SorterModule.Sorter.ToDrawer(q, PictureMap, 0, 0, 0, 0, 0, 256);
        }
Exemple #3
0
        /*private void Picture2D_Click(object sender, EventArgs e)
        {
            InputModule.InputText.KeyValues PictureMap = InputModule.InputText.EnterValues();
            Dictionary<string, Dictionary<string, double>> q = InputModule.Input.RunInputModule(PathToFile, PictureMap);
            List < Tuple<int[], int[], int[], int[], int[]> > lv = SorterModule.Sorter.ToDrawer(q, PictureMap, 128, 128, 0, 255, 255, 0);
            string s = "mapsnkeys//map5.png";
            DrawMap.DrawMap.PaintMap(ref s,lv.First().Item3, lv.First().Item4, lv.First().Item5, lv.First().Item1, lv.First().Item2);

        }*/
        private void Picture2D_Click(object sender, EventArgs e)
        {
			//  try
			//формат ARGB
			if (int.TryParse(DialSet.Drob.Text, out x) && (DialSet.Gradient.Checked || DialSet.Palitra.Checked))
			{
				if (x > 0 && x <= 20)
				{
					InputModule.InputText.KeyValues PictureMap = InputModule.InputText.EnterValues();
					Dictionary<string, Dictionary<string, double>> q = InputModule.Input.RunInputModule(PathToFile, PictureMap);
					List<Tuple<int[], int[], int[], int[], int[], int[], int[]>> lv = SorterModule.Sorter.ToDrawer(q, PictureMap, DialSet.Gradient.Checked);
					var bitmap = DM.PaintMap(Properties.Resources.map5, lv.First().Item3, lv.First().Item4, lv.First().Item5, lv.First().Item6, lv.First().Item1, lv.First().Item2);
					MainPicture.Image = bitmap;
					label1.Text = InputModule.Input.nam;
					double[] a = SorterModule.Sorter.FormForLegend();
					Tuple<int[], int[], int[], int[]> ffl = SorterModule.Sorter.FormForLegendColors(DialSet.Gradient.Checked);
					bitmap = DM.PaintLegend(ffl.Item1, ffl.Item2, ffl.Item3, ffl.Item4, a);
					LegendPicture.Image = bitmap;
				}
			}
            /*catch (Exception exception)
            {
                MessageBox.Show("Не верные данные " + exception.Message);
            }*/

        }
Exemple #4
0
        private static string TryFind(string s, InputModule.InputText.KeyValues KeyVals)//A stripped-down auto corrector. Lowercases and exchanges " " on "_"
        {
            string s1 = s.Replace(" ", "_");

            s1 = s1.ToLower();
            string res = "";

            if (KeyVals.Dict.ContainsKey(s1))
            {
                res = s1;
                return(res);
            }
            return(res);
        }
Exemple #5
0
        private void Picture3D_Click(object sender, EventArgs e)
        {
			if (int.TryParse(DialSet.Drob.Text, out x) && (DialSet.Gradient.Checked || DialSet.Palitra.Checked))
			{
				if (x > 0 && x <= 20)
				{
					var a = new Wpf3DTest.MainWindow();
					InputModule.InputText.KeyValues PictureMap = InputModule.InputText.EnterValues();
					Dictionary<string, Dictionary<string, double>> q = InputModule.Input.RunInputModule(PathToFile, PictureMap);
					List<Tuple<int[], int[], int[], int[], int[], int[], int[]>> lv = SorterModule.Sorter.ToDrawer(q, PictureMap, DialSet.Gradient.Checked);
					a.InitializeComponent();
					for (int i = 0; i < 85; i++)
					{
						a.r[i] = lv.First().Item4[i];
						a.g[i] = lv.First().Item5[i];
						a.b[i] = lv.First().Item6[i];
						a.up[i] = -lv.First().Item7[i] * 0.1;
					}
					a.BuildSolid(a.r, a.g, a.b, a.up);
					a.turn(a.mGeometry);
					a.RenderSize = new System.Windows.Size(947,471);
					a.Width = MainPicture.Width + 14;
					a.Height = MainPicture.Height + 7;
					a.Left = Location.X + MainPicture.Location.X;
					a.Top = Location.Y + MainPicture.Location.Y + 31;
					

					//Location.X + MainPicture.Location.X, Location.Y + MainPicture.Location.Y, Location.X + MainPicture.Location.X + MainPicture.Width, Location.Y + MainPicture.Location.Y + MainPicture.Height
					a.Visibility = System.Windows.Visibility.Visible;
					label1.Text = InputModule.Input.nam;
					double[] u = SorterModule.Sorter.FormForLegend();
					Tuple<int[], int[], int[], int[]> ffl = SorterModule.Sorter.FormForLegendColors(DialSet.Gradient.Checked);
					Bitmap bitmap = DM.PaintLegend(ffl.Item1, ffl.Item2, ffl.Item3, ffl.Item4, u);
					LegendPicture.Image = bitmap;
				}
			}
		}
Exemple #6
0
        //Работает. Пропускает неопределенные значения
        public static List <Tuple <int[], int[], int[], int[], int[], int[], int[]> > ToDrawer(Dictionary <string, Dictionary <string, double> > US, InputModule.InputText.KeyValues KeyVals, bool Gradient)
        {
            // CRstep(Rstart, Rend);
            // CBstep(Bstart, Bend);
            //CGstep(Gstart, Gend);
            int n = Project.Font1.x;

            if (n == 0)
            {
                throw new Exception();
            }
            List <Tuple <int[], int[], int[], int[], int[], int[], int[]> > res = new List <Tuple <int[], int[], int[], int[], int[], int[], int[]> > {
            };

            if ((Dividers.Count == 0) && (Project.DialogSettings.AutoGen))
            {
                GenerateDividers(US, n);
            }
            else
            {
                Dividers = InputModule.Input.Divs;
            }
            // CRstep(Rstart, Rend);
            // CBstep(Bstart, Bend);
            CAstep();
            foreach (var item in US)
            {
                int   ser = (Convert.ToInt32(item.Key));
                int[] q1  = new int[US[item.Key].Count];
                int[] q2  = new int[US[item.Key].Count];
                int[] q3  = new int[US[item.Key].Count];
                int[] q4  = new int[US[item.Key].Count];
                int[] q5  = new int[US[item.Key].Count];
                int[] q6  = new int[US[item.Key].Count];
                int[] q7  = new int[US[item.Key].Count];
                int   i   = 0;
                foreach (var item1 in item.Value)
                {
                    if (!Gradient)
                    {
                        if (KeyVals.Dict.ContainsKey(item1.Key))
                        {
                            q1[i] = KeyVals.Dict[item1.Key].X;
                            q2[i] = KeyVals.Dict[item1.Key].Y;
                            int f = GetColorIndex(item1.Value);
                            q3[i] = 255;
                            q4[i] = Project.DialogSettings.red[f];
                            q5[i] = Project.DialogSettings.green[f];
                            q6[i] = Project.DialogSettings.blue[f];
                            q7[i] = f;
                        }
                        else
                        {
                            string s1 = TryFind(item1.Key, KeyVals);
                            if (s1 != "")
                            {
                                q1[i] = KeyVals.Dict[s1].X;
                                q2[i] = KeyVals.Dict[s1].Y;
                                int f = Math.Min(GetColorIndex(item1.Value), Project.DialogSettings.red.Length - 1);
                                q3[i] = 255;
                                q4[i] = Project.DialogSettings.red[f];
                                q5[i] = Project.DialogSettings.green[f];
                                q6[i] = Project.DialogSettings.blue[f];
                                q7[i] = f;
                            }
                            else
                            {
                                q1[i] = 0;
                                q2[i] = 0;
                                q3[i] = 0;
                                q4[i] = 0;
                                q5[i] = 0;
                            }
                        }
                    }
                    else
                    {
                        {
                            if (KeyVals.Dict.ContainsKey(item1.Key))
                            {
                                q1[i] = KeyVals.Dict[item1.Key].X;
                                q2[i] = KeyVals.Dict[item1.Key].Y;
                                int f = GetColorIndex(item1.Value);
                                q3[i] = GetGradient(item1.Value);
                                q4[i] = Project.DialogSettings.red[0];
                                q5[i] = Project.DialogSettings.green[0];
                                q6[i] = Project.DialogSettings.blue[0];
                                q7[i] = f;
                            }
                            else
                            {
                                string s1 = TryFind(item1.Key, KeyVals);
                                if (s1 != "")
                                {
                                    q1[i] = KeyVals.Dict[s1].X;
                                    q2[i] = KeyVals.Dict[s1].Y;
                                    int f = GetColorIndex(item1.Value);
                                    q3[i] = GetGradient(item1.Value);
                                    q4[i] = Project.DialogSettings.red[0];
                                    q5[i] = Project.DialogSettings.green[0];
                                    q6[i] = Project.DialogSettings.blue[0];
                                    q7[i] = f;
                                }
                                else
                                {
                                    q1[i] = 0;
                                    q2[i] = 0;
                                    q3[i] = 0;
                                    q4[i] = 0;
                                    q5[i] = 0;
                                }
                            }
                        }
                    }
                    i += 1;
                }
                res.Add(new Tuple <int[], int[], int[], int[], int[], int[], int[]>(q1, q2, q3, q4, q5, q6, q7));
            }

            return(res);
        }
Exemple #7
0
        public static Dictionary <string, Dictionary <string, double> > RunInputModule(string FilePath, InputModule.InputText.KeyValues InsertedValues)
        {
            Dictionary <string, Dictionary <string, double> > Unsorted = ReadFromExcelFile(FilePath);

            /*RetPair afterFirstSort = FilterByDetection(Unsorted, InsertedValues);*/
            return(Unsorted);
        }
Exemple #8
0
        // Модуль автокоррекции опечаток надо переделать. Пока просто пропускаем неопределенные значения в сортировщике.
        private static RetPair FilterByDetection(Dictionary <string, Dictionary <string, double> > unsorted, InputModule.InputText.KeyValues InsertedValues)
        {
            RetPair result = new RetPair();

            foreach (var item in unsorted)
            {
                if (InsertedValues.Dict.ContainsKey(item.Key))
                {
                    result.Det.Add(item.Key, item.Value);
                }
                else
                {
                    result.Undet.Add(item.Key, item.Value);
                }
            }
            return(result);
        }