예제 #1
0
        public ObjectoDijkstra[] DameGrafos()
        {
            var list = LineaDA.GetInstance().lineas.SelectMany(l => LineaARutaDetalle.DameDetalle(l.Paraderos.First(), l.Paraderos.Last(), l)).ToList();

            list.AddRange(LineaDA.GetInstance().lineas.SelectMany(l => LineaARutaDetalle.DameDetalle(l.Paraderos.Last(), l.Paraderos.First(), l)).ToList());
            var lista2 = list
                         .GroupBy(l => l.ParaderoOrigen.Codigo + "/" + l.ParaderoDestino.Codigo)
                         .Select(k => k.First())
                         .ToArray();

            return(lista2
                   .GroupBy(l => l.ParaderoOrigen.Codigo)
                   .Select(k => new ObjectoDijkstra
            {
                Origen = k.First().ParaderoOrigen,
                Destinos =
                    k.Select(d => new Dijkstra {
                    Destino = d.ParaderoDestino, Distancia = d.Distancia
                }).ToArray()
            }).ToArray());
        }
 public LineaBL()
 {
     this.lineaDA = new LineaDA();
 }
예제 #3
0
 public Linea[] DameLineas()
 {
     return(LineaDA.GetInstance().lineas.ToArray());
 }
예제 #4
0
 public Linea DameLineas(string code)
 {
     return(LineaDA.GetInstance().lineas.First(l => l.Codigo == code));
 }
예제 #5
0
 public Linea[] DameLineas(Paradero paradero)
 {
     return(LineaDA.GetInstance().GetLinea(paradero));
 }