Exemple #1
0
        public static void addLane(String laneId, int sourceLocNo, int destLocNo,
                                   int duration)
        {
            ArestaModel lane = new ArestaModel(laneId, nodos[sourceLocNo], nodos[destLocNo], duration);

            arestas.Add(lane);
        }
        //adiciona um trajeto para ser inserido no Grafo. (ex.: A distância da cidade A (origemAresta) até a cidade B (destinoAresta) é 5 (duração))
        private void AdicionaAresta(String id, int origemAresta, int destinoAresta, int duracao)
        {
            //verifica se há de fato um vertice representando a origem e outro representando o destino da aresta
            VerticeModel origem  = new VerticeModel("Nodo_" + origemAresta, "Nodo_" + origemAresta);
            VerticeModel destino = new VerticeModel("Nodo_" + destinoAresta, "Nodo_" + destinoAresta);

            if (nodos.Contains(origem) &&
                nodos.Contains(destino))
            {
                ArestaModel faixa = new ArestaModel(id, nodos[nodos.IndexOf(origem)], nodos[nodos.IndexOf(destino)], duracao);
                arestas.Add(faixa);
            }
        }