Exemplo n.º 1
0
        private bool isEndImage(Image image, out GameResult gameResult)
        {
            gameResult = GameResult.RESULT_UNKNOW;
            Color color;

            color = ImageOperator.GetImageRgb(image, 86, 212);
            if (color.B > 190)
            {
                gameResult = GameResult.PLAYER_WIN;
                return(true);
            }

            color = ImageOperator.GetImageRgb(image, 208, 214);
            if (color.R > 200)
            {
                gameResult = GameResult.BANKER_WIN;
                return(true);
            }

            color = ImageOperator.GetImageRgb(image, 134, 214);
            if (color.G > 100)
            {
                gameResult = GameResult.DRAW_GAME;
                return(true);
            }

            return(false);
        }
Exemplo n.º 2
0
        private bool isStartImage(Image image)
        {
            //用开局的"准备下注"黄色字体判断
            Color        color;
            List <Color> colorList = new List <Color>();

            //389,216 ===>255,255,1
            color = ImageOperator.GetImageRgb(image, 389, 216);
            colorList.Add(color);
            //448,215 ===> 255,251,5
            color = ImageOperator.GetImageRgb(image, 448, 215);
            colorList.Add(color);
            //430,220 ===> 246,247,0
            color = ImageOperator.GetImageRgb(image, 430, 220);
            colorList.Add(color);

            foreach (Color item in colorList)
            {
                Int32 r = item.R;
                Int32 g = item.G;
                Int32 b = item.B;
                if (r < 240 || g < 240 || b > 10)
                {
                    return(false);
                }
            }
            return(true);
        }
Exemplo n.º 3
0
        protected override bool isEndImage(Bitmap image, out GameResult gameResult)
        {
            gameResult = GameResult.RESULT_UNKNOW;
            Color colorTop = ImageOperator.GetImageRgb(image, 140, 70);

            if (colorTop.R < 250)
            {
                return(false);
            }
            Color color1 = ImageOperator.GetImageRgb(image, 103, 206);
            Color color2 = ImageOperator.GetImageRgb(image, 136, 205);
            Color color3 = ImageOperator.GetImageRgb(image, 146, 179);

            if (color1.R < 10 && color1.G < 10 && color1.B < 10 && color2.R < 10 && color2.G < 10 && color2.B < 10 &&
                ColorInRect(image, Color.FromArgb(255, 255, 255), new Rectangle(81, 147, 70, 70)))
            {
                gameResult = GameResult.RESULT_BLACK;
                return(true);
            }
            else if (color1.R > 215 && color2.R > 215)
            {
                gameResult = GameResult.RESULT_RED;
                return(true);
            }
            else if (color1.G > 150 && color2.G > 150)
            {
                gameResult = GameResult.RESULT_GREEN;
                return(true);
            }
            return(false);
        }
Exemplo n.º 4
0
        public virtual void Copy()
        {
            var ii             = new ImageOperator();
            var selectFoto     = new SelectFotoDialogView();
            var destinationDir = new DirectoryInfo("C:\\Temp\\2");

            if ((bool)selectFoto.ShowDialog())
            {
                var dirList = new List <string>();
                if ((bool)selectFoto.PhotoUnInstallation)
                {
                    dirList.Add("Фото_демонтажа");
                }
                if ((bool)selectFoto.PhotoInstallation)
                {
                    dirList.Add("Фото_монтажа");
                }
                if ((bool)selectFoto.PhotoConnection)
                {
                    dirList.Add("Фото_подключения");
                }
                if ((bool)selectFoto.PhotoRepairs)
                {
                    dirList.Add("Фото_ремонта");
                }
                if ((bool)selectFoto.PhotoLight)
                {
                    dirList.Add("Фото_свет");
                }
                ii.CopyByNumbers(DUFilesDir, destinationDir, UNIUs, dirList, true, false, true);
            }
        }
Exemplo n.º 5
0
        public virtual void Copy()
        {
            var ii             = new ImageOperator();
            var destinationDir = new DirectoryInfo(ResultPath);
            var dirList        = new List <string>();

            if (UnInstallationFolder)
            {
                dirList.Add("Фото_демонтажа");
            }
            if (InstallationFolder)
            {
                dirList.Add("Фото_монтажа");
            }
            if (ConnectionFolder)
            {
                dirList.Add("Фото_подключения");
            }
            if (RepairsFolder)
            {
                dirList.Add("Фото_ремонта");
            }
            if (LightFolder)
            {
                dirList.Add("Фото_свет");
            }
            WindowService.Hide();
            SplashScreenService.ShowSplashScreen();
            ii.CopyByNumbers(SourceDir, destinationDir, UNIUs, dirList, RenameToSubdirs, CopyToSubdirs, OverlayText);
            SplashScreenService.HideSplashScreen();
            WindowService.Close();
        }
Exemplo n.º 6
0
        protected override bool isStartImage(Bitmap image)
        {
            //用开局的"准备下注"黄色字体判断
            Color        color;
            List <Color> colorList = new List <Color>();

            //389,216 ===>255,255,1
            color = ImageOperator.GetImageRgb(image, 479, 288);
            colorList.Add(color);
            //448,215 ===> 255,251,5
            color = ImageOperator.GetImageRgb(image, 508, 286);
            colorList.Add(color);
            //430,220 ===> 246,247,0
            color = ImageOperator.GetImageRgb(image, 598, 288);
            colorList.Add(color);

            foreach (Color item in colorList)
            {
                Int32 r = item.R;
                Int32 g = item.G;
                Int32 b = item.B;
                if (r < 220 || g < 220 || b > 50)
                {
                    return(false);
                }
            }
            if (resultHistory == null)
            {
                resultHistory = FirstGetResultHistory(image);
                Log(String.Format("当前统计:红={0} 黑={1} 绿={2}", resultHistory.CountRed, resultHistory.CountBlack, resultHistory.CountGreen));
            }
            return(true);
        }
Exemplo n.º 7
0
        protected override ResultHistory FirstGetResultHistory(Bitmap image)
        {
            ResultHistory resultHistory = new ResultHistory();
            List <Point>  pointList     = new List <Point>();

            int startX = 80, startY = 551;

            for (int col = 0; col < 10; col++)
            {
                for (int row = 0; row < 6; row++)
                {
                    Color color = ImageOperator.GetImageRgb(image, startX + (16 * col), startY + (16 * row));
                    if (color.R >= 200 && color.G < 40 && color.B < 40)
                    {
                        resultHistory.CountRed++;
                    }
                    else if (color.G >= 120 && color.R < 80 && color.B < 80)
                    {
                        resultHistory.CountGreen++;
                    }
                    else if (color.R < 30 && color.G < 30 && color.B < 30)
                    {
                        resultHistory.CountBlack++;
                    }
                }
            }
            return(resultHistory);
        }
Exemplo n.º 8
0
        public void UpdateImage()
        {
            ImageOperator io = new ImageOperator();

            io.UpdateImage(new FileInfo("C:\\Users\\Bushmakin\\Pictures\\1111.png"),
                           new FileInfo("C:\\Users\\Bushmakin\\Pictures\\2222.png"),
                           "65456456456465456477777777888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888887777777777777777777777776545645645646546546546545456456465465456465");
        }
Exemplo n.º 9
0
        public void PrintAllImagesInFolder()
        {
            var ii = new ImageOperator();

            foreach (var du in (new DirectoryInfo("C:\\Temp\\1\\").GetFiles("*", SearchOption.AllDirectories)))
            {
                ii.UpdateImage(du, new DirectoryInfo("C:\\Temp\\2"));
            }
        }
Exemplo n.º 10
0
        protected override bool isVedioOn(Bitmap image)
        {
            Color color = ImageOperator.GetImageRgb(image, 805, 621);

            if (color.R < 50 && color.G > 120 && color.B < 5)
            {
                return(true);
            }
            return(false);
        }
Exemplo n.º 11
0
 protected bool ColorInRect(Bitmap bitmap, Color color, Rectangle rectangle)
 {
     for (int col = 0; col < rectangle.Width; ++col)
     {
         for (int row = 0; row < rectangle.Height; ++row)
         {
             Color tempColor = ImageOperator.GetImageRgb(bitmap, rectangle.X + col, rectangle.Y + row);
             if (Math.Abs(color.R - tempColor.R) < 10 && Math.Abs(color.G - tempColor.G) < 10 && Math.Abs(color.B - tempColor.B) < 10)
             {
                 return(true);
             }
         }
     }
     return(false);
 }
Exemplo n.º 12
0
        protected override bool isOutRoom(Bitmap image)
        {
            //240 93 41
            Color color1 = ImageOperator.GetImageRgb(image, 17, 94);
            //0 145 189
            Color color2 = ImageOperator.GetImageRgb(image, 41, 73);
            //0 79 0
            Color color3 = ImageOperator.GetImageRgb(image, 860, 87);

            if (color1.R > 230 && color1.G < 100 && color1.B < 50 &&
                color2.R < 10 && color2.G < 150 && color2.B < 200 &&
                color3.R > 10 && color3.G < 70 && color3.B > 10)
            {
                return(true);
            }
            return(false);
        }
Exemplo n.º 13
0
        public void CopyTo()
        {
            ImageOperator io   = new ImageOperator();
            var           inp  = new DirectoryInfo("Z:\\DU_files");
            var           outp = new DirectoryInfo("c:\\temp\\2019-09-18 87 ДУ");
            var           subd = new List <string>()
            {
                "Фото_свет"
            };
            var numbers = new List <string>()
            {
                "03100ДУ801063",
                "03100ДУ801065",
                "03100ДУ801080",
                "03100ДУ801149",
                "03100ДУ801172",
                "03100ДУ801198",
                "03110ДУ801280",
                "03110ДУ801281",
                "03110ДУ801288",
                "03110ДУ801290",
                "03110ДУ801291",
                "03110ДУ801292",
                "03110ДУ801293",
                "03120ДУ801037",
                "03120ДУ801044",
                "03120ДУ801088",
                "03120ДУ801091",
                "03120ДУ801109",
                "03120ДУ801116",
                "03120ДУ801117",
                "03120ДУ801118",
                "03120ДУ801119",
                "03120ДУ801136",
                "03120ДУ801137",
                "03120ДУ801150",
                "03120ДУ801151",
                "03120ДУ801156",
                "03120ДУ801174",
                "03120ДУ801211",
                "03120ДУ801212",
                "03120ДУ801215",
                "03120ДУ801231",
                "03120ДУ801307",
                "03130ДУ801128",
                "03130ДУ801130",
                "03130ДУ801155",
                "03130ДУ801183",
                "03150ДУ801056",
                "03150ДУ801109",
                "03150ДУ801112",
                "03150ДУ801113",
                "03150ДУ801114",
                "03150ДУ801238",
                "03150ДУ801257",
                "03150ДУ801261",
                "03150ДУ801272",
                "03150ДУ801275",
                "03150ДУ801276",
                "03150ДУ801277",
                "03150ДУ801279",
                "03150ДУ801281",
                "03150ДУ801282",
                "03150ДУ801286",
                "03150ДУ801289",
                "03150ДУ801290",
                "03150ДУ801291",
                "03150ДУ801524",
                "03150ДУ801525",
                "03150ДУ801535",
                "03160ДУ801213",
                "03160ДУ801215",
                "03160ДУ801227",
                "03160ДУ801239",
                "03160ДУ801242",
                "03160ДУ801243",
                "03160ДУ801244",
                "03160ДУ801297",
                "03160ДУ801340",
                "03160ДУ801415",
                "03160ДУ801416",
                "03160ДУ801434",
                "03170ДУ801114",
                "03170ДУ801146",
                "03170ДУ801147",
                "03170ДУ801306",
                "03170ДУ801312",
                "03170ДУ801319",
                "03180ДУ801316",
                "09140ДУ800012",
                "09140ДУ800029",
                "09140ДУ800017",
                "09140ДУ800037",
                "09140ДУ800040",
                "09140ДУ800038",
                "09140ДУ800047",
                "09140ДУ800048",
                "09140ДУ800066"
            };

            io.CopyByNumbers(inp, outp, numbers, subd, false, false, true);
        }
Exemplo n.º 14
0
        public void SelectPhotos()
        {
            var numbers = new List <string>()
            {
                "03100ДУ801063",
                "03100ДУ801065",
                "03100ДУ801080",
                "03100ДУ801149",
                "03100ДУ801172",
                "03100ДУ801198",
                "03110ДУ801280",
                "03110ДУ801281",
                "03110ДУ801288",
                "03110ДУ801290",
                "03110ДУ801291",
                "03110ДУ801292",
                "03110ДУ801293",
                "03120ДУ801037",
                "03120ДУ801044",
                "03120ДУ801088",
                "03120ДУ801091",
                "03120ДУ801109",
                "03120ДУ801116",
                "03120ДУ801117",
                "03120ДУ801118",
                "03120ДУ801119",
                "03120ДУ801136",
                "03120ДУ801137",
                "03120ДУ801150",
                "03120ДУ801151",
                "03120ДУ801156",
                "03120ДУ801174",
                "03120ДУ801211",
                "03120ДУ801212",
                "03120ДУ801215",
                "03120ДУ801231",
                "03120ДУ801307",
                "03130ДУ801128",
                "03130ДУ801130",
                "03130ДУ801155",
                "03130ДУ801183",
                "03150ДУ801056",
                "03150ДУ801109",
                "03150ДУ801112",
                "03150ДУ801113",
                "03150ДУ801114",
                "03150ДУ801238",
                "03150ДУ801257",
                "03150ДУ801261",
                "03150ДУ801272",
                "03150ДУ801275",
                "03150ДУ801276",
                "03150ДУ801277",
                "03150ДУ801279",
                "03150ДУ801281",
                "03150ДУ801282",
                "03150ДУ801286",
                "03150ДУ801289",
                "03150ДУ801290",
                "03150ДУ801291",
                "03150ДУ801524",
                "03150ДУ801525",
                "03150ДУ801535",
                "03160ДУ801213",
                "03160ДУ801215",
                "03160ДУ801227",
                "03160ДУ801239",
                "03160ДУ801242",
                "03160ДУ801243",
                "03160ДУ801244",
                "03160ДУ801297",
                "03160ДУ801340",
                "03160ДУ801415",
                "03160ДУ801416",
                "03160ДУ801434",
                "03170ДУ801114",
                "03170ДУ801146",
                "03170ДУ801147",
                "03170ДУ801306",
                "03170ДУ801312",
                "03170ДУ801319",
                "03180ДУ801316",
                "09140ДУ800012",
                "09140ДУ800029",
                "09140ДУ800017",
                "09140ДУ800037",
                "09140ДУ800040",
                "09140ДУ800038",
                "09140ДУ800047",
                "09140ДУ800048",
                "09140ДУ800066"
            };
            DirectoryInfo directory = new DirectoryInfo("Z:\\DU_files");
            var           io1       = new ImageOperator();
            var           uri       = io1.SelectPhotos(directory, numbers, new List <string>()
            {
                "фото_свет"
            });

            foreach (var file in uri)
            {
                // io1.Print(file, new PrinterSettings(), new PageSettings());
            }
        }
Exemplo n.º 15
0
 static DownloadAndChangePic()
 {
     _imageOperator = new ImageOperator();
 }