Exemplo n.º 1
0
        /// <summary>
        ///  gaat door WRstraatnamen en WRdata files
        ///  returned lijst van alle straten.
        /// </summary>
        /// <returns></returns>
        public static List <Straat> StraatFactory(string unziptPath)
        {
            List <Straat> straten = new List <Straat>();

            #region ingelezen
            Dictionary <int, string>          WRstraatnamen = Inlezer.WRstraatNamenParser(unziptPath);
            Dictionary <int, List <Segment> > WRData        = Inlezer.WRdataParser(unziptPath);
            Console.WriteLine("\nLoading straten maken: ");
            int teller = 0;
            #endregion
            foreach (KeyValuePair <int, string> straatnaam in WRstraatnamen)
            {
                //controleren of straatnamen en wrData overeenkomen
                if (WRstraatnamen.ContainsKey(straatnaam.Key) && WRData.ContainsKey(straatnaam.Key))
                {
                    Straat temp = new Straat(straatnaam.Key, straatnaam.Value, Graaf.buildGraaf(straatnaam.Key, WRData[straatnaam.Key]));
                    straten.Add(temp);
                    teller++;
                    if (teller > 50000)
                    {
                        teller = 0;
                        Console.Write("*");
                    }
                }
            }
            return(straten);
        }
Exemplo n.º 2
0
        public static Graaf buildGraaf(int graafID, List <Segment> ingelezenSegmenten)
        {
            Graaf buildedGraaf;

            buildedGraaf = new Graaf(graafID);
            //1st map checken of er niets in zit
            foreach (Segment segment in ingelezenSegmenten)
            {
                if (buildedGraaf.map.Count == 0) //als map leeg is
                {
                    buildedGraaf.map.Add(segment.beginKnoop, new List <Segment>()
                    {
                        segment
                    });                                                                       //lijst segmeneten initialiseren en dan segment insteken
                }
                else
                {
                    if (buildedGraaf.map.ContainsKey(segment.beginKnoop))  //als straat opslitst.
                    {
                        buildedGraaf.map[segment.beginKnoop].Add(segment); //bij die key voeg nieuw segment aan toe
                    }
                    else //als hij het niet vindt.
                    {
                        buildedGraaf.map.Add(segment.beginKnoop, new List <Segment>()
                        {
                            segment
                        });
                    }
                }
            }
            return(buildedGraaf);
        }
Exemplo n.º 3
0
 public Straat(int straatID, string straatnaam, Graaf graaf) => (this.straatId, this.straatnaam, this.graaf) = (straatID, straatnaam, graaf);