Exemplo n.º 1
0
        //Cria um arquivo txt com o passo a passo gerado pelo json.
        public void CreateTxt(GeoCode locationsResponse, string arquivo)
        {
            StreamWriter rd = File.CreateText(arquivo);
            const string HTML_TAG_PATTERN = "<.*?>";

            foreach (var item in locationsResponse.rotas)
            {
                var x = locationsResponse.rotas.Length;

                //Legs rota = (Legs)locationsResponse.rotas[0].trajeto[i];
                foreach (var rota in item.trajeto)
                {
                    var y = item.trajeto.Length;
                    var distanciaTotal = 0;
                    var tempoTotal = 0;
                    Console.WriteLine(" Origem: " + rota.ruaOrigem);
                    Console.WriteLine("Destino: " + rota.ruaDestino);
                    Console.WriteLine();
                    //foreach (var items in rota.caminhos)
                    //{
                    //    passos.Add(items.instrucao);
                    //}

                    for (int j = 0; j < rota.caminhos.Length; j++)
                    {
                        tempoTotal =tempoTotal+ rota.caminhos[j].distancia.valor; ;
                        distanciaTotal = distanciaTotal + rota.caminhos[j].distancia.valor;
                        rd.WriteLine(j + ": " + Regex.Replace(rota.caminhos[j].instrucao, HTML_TAG_PATTERN, string.Empty) + ";" + rota.caminhos[j].distancia.texto);
                    }
                    rd.WriteLine("tempo Estimado:{0} distancia Estimada:{1} ", tempoTotal/60, distanciaTotal/1000);
                    rd.WriteLine();
                    rd.WriteLine();
                }
            } rd.Close();
        }
Exemplo n.º 2
0
        public void criaMatriz(GeoCode locationsResponse)
        {
            const string HTML_TAG_PATTERN = "<.*?>";
            int countOrigem = 0;
            int countDestino = 0;
            foreach (var item in locationsResponse.rotas)
            {
                //var x = locationsResponse.rotas.Length;
                foreach (var rota in item.trajeto)
                {
                    //var y = item.trajeto.Length;

                    foreach (var itens in rota.caminhos)
                    {

                        if (!lista.Contains(itens.origem))
                        {
                            lista.Add(itens.origem);
                            obj.origem = itens.origem;
                            obj.tempo.texto = itens.duracao.texto;
                            obj.tempo.valor = itens.duracao.valor;
                            obj.destino.Add(itens.destino);
                            //Console.WriteLine("passo:{0}     origem{1}",item.trajeto)
                        }
                        else
                        {
                            //já existe a origem
                        }
                        //passos.Add(items.origem);
                    }

                    //for (int j = 0; j < rota.caminhos.Length; j++)
                    //{
                    //    Console.WriteLine("lat origem:" + rota.caminhos[j].origem.lat);
                    //    Console.WriteLine("long origem:" + rota.caminhos[j].origem.lng);
                }

            }
        }
Exemplo n.º 3
0
        //função responsável por exibição do passo a passo
        public void ProcessResponse(GeoCode locationsResponse)
        {
            //string utilizada para remover as tags html
            const string HTML_TAG_PATTERN = "<.*?>";

            //int locNum = locationsResponse.rotas[0].trajeto.Length;
            //for (int i = 0; i < locNum; i++)
            //{
            foreach (var item in locationsResponse.rotas)
            {

                foreach (var rota in item.trajeto)
                {
                    Console.WriteLine(" Origem: " + rota.ruaOrigem);
                    Console.WriteLine("Destino: " + rota.ruaDestino);
                    Console.WriteLine();
                    for (int j = 0; j < rota.caminhos.Length; j++)
                    {
                    //    Console.WriteLine("lat origem:" + rota.caminhos[j].origem.lat);
                    //    Console.WriteLine("long origem:" + rota.caminhos[j].origem.lng);

                        Console.WriteLine("Passo " + j + ": " + Regex.Replace(rota.caminhos[j].instrucao, HTML_TAG_PATTERN, string.Empty));
                        Console.WriteLine("Tempo estimado: " + rota.caminhos[j].duracao.valor);
                        Console.WriteLine("Distância à percorrer nesse caminho: " + rota.caminhos[j].distancia.texto);
                        //Console.WriteLine("lat Destino:" + rota.caminhos[j].destino.lat);
                        //Console.WriteLine("long Destino:" + rota.caminhos[j].destino.lng);

                    }
                    Console.WriteLine();
                    Console.WriteLine();

                }
                Console.ReadKey();
            }
        }
Exemplo n.º 4
0
        public void editaTrajeto(GeoCode locationsResponse, int valor)
        {
            const string HTML_TAG_PATTERN = "<.*?>";

            foreach (var rota in locationsResponse.rotas[valor].trajeto)
            {

                Console.WriteLine(" Origem: " + rota.ruaOrigem);
                Console.WriteLine("Destino: " + rota.ruaDestino);
                Console.WriteLine();
                for (int j = 0; j < rota.caminhos.Length; j++)
                {

                    Console.WriteLine("Passo " + j + ": " + Regex.Replace(rota.caminhos[j].instrucao, HTML_TAG_PATTERN, string.Empty));
                    Console.WriteLine("Tempo estimado: " + rota.caminhos[j].duracao.valor);
                    Console.WriteLine("Distância à percorrer nesse caminho: " + rota.caminhos[j].distancia.texto);

                }
            }
        }