public static Bitmap FromTimeSpan(string pathCaracteres, TimeSpan timeSpan)
        {
            var imgHora   = FromNumber(pathCaracteres, timeSpan.Hours, 2);
            var imgMinute = FromNumber(pathCaracteres, timeSpan.Minutes, 2);

            var doisPontos = BitmapHelper.LoadIfExists(System.IO.Path.Combine(pathCaracteres, "dois-pontos.png"));

            var result = new Bitmap(imgHora.Width + doisPontos.Width + imgMinute.Width + horSpace * 3, imgHora.Height);

            var nextPoint = result.Merge(imgHora, new Point(0, 0), Color.Blue);

            result.Merge(doisPontos, new Point(nextPoint.X + horSpace, 5 * vertSpace), Color.Blue);

            result.Merge(imgMinute, new Point(nextPoint.X + 2 * horSpace, nextPoint.Y), Color.Blue);

            return(result);
        }
        private Padrao[] GeraConteudosAleatorios(GeradorArgs args)
        {
            var pathPadrao = base.GetPastaImagemAleatoria();

            var result      = new List <Padrao>();
            int variacaoMin = args.MargemAtraso.MinimoMinutos;
            int variacaoMax = args.MargemAtraso.MaximoMinutos;

            for (int dia = 1; dia <= 31; dia++)
            {
                result.Add(new Padrao()
                {
                    Inicio          = GeradorNumeros.FromTimeSpan(pathPadrao, GerarTimespanAleatorio(9, variacaoMin, variacaoMax, true)),
                    IntervaloInicio = GeradorNumeros.FromTimeSpan(pathPadrao, GerarTimespanAleatorio(12, variacaoMin, variacaoMax, false)),
                    IntervaloFim    = GeradorNumeros.FromTimeSpan(pathPadrao, GerarTimespanAleatorio(14, variacaoMin, variacaoMax, true)),
                    Fim             = GeradorNumeros.FromTimeSpan(pathPadrao, GerarTimespanAleatorio(19, variacaoMin, variacaoMax, false)),
                    Assinatura      = BitmapHelper.LoadIfExists(System.IO.Path.Combine(pathPadrao, "Assinatura.png"))
                });
            }

            return(result.ToArray());
        }
Esempio n. 3
0
        private List <Padrao> CriaConteudosTabelaHorarioAleatorios()
        {
            var result = new List <Padrao>();

            int numeroPastas = base.PastasImagens.Length;

            Bitmap[] inicio          = new Bitmap[numeroPastas];
            Bitmap[] intervaloInicio = new Bitmap[numeroPastas];
            Bitmap[] intervaloFim    = new Bitmap[numeroPastas];
            Bitmap[] fim             = new Bitmap[numeroPastas];
            Bitmap[] assinatura      = new Bitmap[numeroPastas];



            //var path = System.IO.Path.Combine(pathPadrao);

            for (int i = 0; i < numeroPastas; i++)
            {
                var path = this.PastasImagens[i];
                inicio[i]          = BitmapHelper.LoadIfExists(System.IO.Path.Combine(path, "inicio.png"));
                intervaloInicio[i] = BitmapHelper.LoadIfExists(System.IO.Path.Combine(path, "IntInicio.png"));
                intervaloFim[i]    = BitmapHelper.LoadIfExists(System.IO.Path.Combine(path, "IntFim.png"));
                fim[i]             = BitmapHelper.LoadIfExists(System.IO.Path.Combine(path, "Fim.png"));
                assinatura[i]      = BitmapHelper.LoadIfExists(System.IO.Path.Combine(path, "Assinatura.png"));
            }

            Random rnd = new Random();

            rnd.Shuffle(inicio);

            rnd.Shuffle(intervaloInicio);

            rnd.Shuffle(intervaloFim);

            rnd.Shuffle(fim);

            rnd.Shuffle(assinatura);

            int indexAtual = 0;

            for (int dia = 1; dia <= 31; dia++)
            {
                if (indexAtual == numeroPastas)
                {
                    indexAtual = 0;
                    rnd.Shuffle(inicio);

                    rnd.Shuffle(intervaloInicio);

                    rnd.Shuffle(intervaloFim);

                    rnd.Shuffle(fim);

                    rnd.Shuffle(assinatura);
                }

                result.Add(new Padrao()
                {
                    Inicio          = inicio[indexAtual],
                    IntervaloInicio = intervaloInicio[indexAtual],
                    IntervaloFim    = intervaloFim[indexAtual],
                    Fim             = fim[indexAtual],
                    Assinatura      = assinatura[indexAtual]
                });

                indexAtual++;
            }

            return(result);
        }