private static string GetLangsteStraat(Gemeente gemeente) { decimal lengteLangsteStraat = -1; string naamLangsteStraat = ""; decimal lengteKortsteStraat = -1; string naamKortsteStraat = ""; foreach (Straat straat in Straat.GetList(gemeente)) { decimal lengte = 0; foreach (List <Segment> segmenten in straat.Graaf.KnoopSegmenten.Values) { foreach (Segment segment in segmenten) { List <Punt> punten = segment.Punten; decimal x1 = punten[0].X; decimal y1 = punten[0].Y; decimal x2; decimal y2; for (int i = 1; i < punten.Count; i++) { x2 = punten[i].X; y2 = punten[i].Y; lengte += ((x2 - x1) * (x2 - x1)) + ((y2 - y1) * (y2 - y1)) * ((x2 - x1) * (x2 - x1)) + ((y2 - y1) * (y2 - y1)); } } } if (lengteLangsteStraat < lengte) { lengteLangsteStraat = lengte; naamLangsteStraat = straat.StraatNaam; } if (lengteKortsteStraat == -1 && lengte > 0) { lengteKortsteStraat = lengte; naamKortsteStraat = straat.StraatNaam; } else if (lengteKortsteStraat > lengte && lengte > 0) { lengteKortsteStraat = lengte; naamKortsteStraat = straat.StraatNaam; } } string langsteStraatStr = $"Langste straat: {naamLangsteStraat} Lengte: {lengteLangsteStraat}"; string kortsteStraatStr = $"Kortste straat: {naamKortsteStraat} {lengteKortsteStraat}"; return(langsteStraatStr + Environment.NewLine + kortsteStraatStr); }
public static void Create() { foreach (Provincie provincie in Provincie.GetList()) { StringBuilder sb = new StringBuilder(); int stratenInProvincie = 0; foreach (Gemeente gemeente in Gemeente.GetList(provincie)) { int stratenInGemeente = Straat.GetList(gemeente).Count(); sb.Append(gemeente.GemeenteNaam); sb.Append(" "); sb.Append(stratenInGemeente); sb.Append(Environment.NewLine); sb.Append(GetLangsteStraat(gemeente)); sb.Append(Environment.NewLine); stratenInProvincie += stratenInGemeente; } string fileInhoud = provincie.Naam + " " + stratenInProvincie + Environment.NewLine + sb.ToString(); System.IO.File.WriteAllText($"ProvincieFiles\\rapport_{provincie.Naam}.txt", fileInhoud); } }
static void Main(string[] args) { Config.strListWRData = Config.InitStrData(); foreach (Provincie provincie in Provincie.GetList()) { StringBuilder sb = new StringBuilder(); sb.Append(provincie.ToString()); foreach (Gemeente gemeente in Gemeente.GetList(provincie)) { sb.Append(gemeente.ToString()); foreach (Straat straat in Straat.GetList(gemeente)) { sb.Append(straat.ToString()); } } string text = sb.ToString(); System.IO.File.WriteAllText($"ProvincieFiles\\{provincie.Naam}.txt", text); } Rapport.Create(); Console.WriteLine("Klaar!"); Console.Read(); }
public static List <Straat> GetList(Gemeente gemeente) { if (!gemeentestraten.ContainsKey(gemeente)) { var idindex = Config.indexwrgemeenteid; List <string[]> straatGemeenteidsTemp = Config.strListStraatGemeenteIds; straatGemeenteidsTemp.RemoveAt(0); IEnumerable <string[]> straatGemeenteIds = straatGemeenteidsTemp. Where(e => e[idindex["gemeentenaamid"]] == gemeente.GemeenteId.ToString()); var index = Config.indexwrstraatnamen; List <string[]> strListStraatnamen = CSVReader.ReadCSV(Config.pathStraatNamen, ';'); List <Straat> straten = new List <Straat>(); foreach (string[] straatGemeenteId in straatGemeenteIds) { string strStraatId = straatGemeenteId[idindex["straatnaamid"]]; foreach (string[] straatNaamEnID in strListStraatnamen) { if (strStraatId == straatNaamEnID[index["straatid"]]) { int straatId = int.Parse(strStraatId); string straatNaam = straatNaamEnID[index["straatnaam"]].Trim(); // bevat soms whitespace Straat straat = new Straat(straatId, straatNaam, gemeente); straat.Graaf = Graaf.GetInstance(straatId);; straten.Add(straat); break; } } } gemeentestraten.Add(gemeente, straten); } return(gemeentestraten[gemeente]); }