public ActionResult GetJSON(Leerling leerling) { DeterminatieTabel tabel = leerling.Graad.DeterminatieTabel; object tbl = tabel.MaakJsonObject(); return(Json(tbl, JsonRequestBehavior.AllowGet)); }
public DeterminatieTabel MaakDeterminatieTabel() { DeterminatieTabel dt = new DeterminatieTabel(); ParameterFactory _parameterFactory = new ParameterFactory(); ResultaatBlad jajaResultaatKnoop = new ResultaatBlad(new VegetatieType("Ijswoestijnklimaat", ""), "Koud klimaat zonder dooiseizoen"); ResultaatBlad janeeResultaatKnoop = new ResultaatBlad(new VegetatieType("Ijswoestijnklimaat", "Toendraklimaat"), "Koud klimaat met dooiseizoen"); ResultaatBlad neejaResultaatKnoop = new ResultaatBlad(new VegetatieType("Taigaklimaat", ""), "Koudgematigd klimaat met strenge winter"); ResultaatBlad neeneejajaResultaatKnoop = new ResultaatBlad(new VegetatieType("Woestijnklimaat van de middelbreedten", ""), "Gematigd altijd droog klimaat"); ResultaatBlad neeneejaneeResultaatKnoop = new ResultaatBlad(new VegetatieType("Woestijnklimaat van de tropen", ""), "Warm altijd droog klimaat"); ResultaatBlad neeneeneejajaResultaatKnoop = new ResultaatBlad(new VegetatieType("Steppeklimaat", ""), "Gematigd, droog klimaat"); ResultaatBlad neeneeneejaneejaResultaatKnoop = new ResultaatBlad(new VegetatieType("Taigaklimaat", ""), "Koudgematigd klimaat met strenge winter"); ResultaatBlad neeneeneejaneeneejajaResultaatKnoop = new ResultaatBlad(new VegetatieType("Gemengd-woudklimaat", ""), "Koelgematigd klimaat met koude winter"); ResultaatBlad neeneeneejaneeneejaneejaResultaatKnoop = new ResultaatBlad(new VegetatieType("Loofbosklimaat", ""), "Koelgematigd klimaat met zachte winter"); ResultaatBlad neeneeneejaneeneejaneeneeResultaatKnoop = new ResultaatBlad(new VegetatieType("Subtropisch regenwoudklimaat", ""), "Warmgematigd altijd nat klimaat"); ResultaatBlad neeneeneejaneeneeneejajaResultaatKnoop = new ResultaatBlad(new VegetatieType("Hardbladige-vegetatieklimaat van de centrale middelbreedten", ""), "Koelgematigd klimaat met natte winter"); ResultaatBlad neeneeneejaneeneeneejaneeResultaatKnoop = new ResultaatBlad(new VegetatieType("Hardbladige-vegetatieklimaat van de subtropen", ""), "Warmgematigd klimaat met natte winter"); ResultaatBlad neeneeneejaneeneeneeneeResultaatKnoop = new ResultaatBlad(new VegetatieType("Subtropisch savanneklimaat", ""), "Warmgematigd klimaat met natte zomer"); ResultaatBlad neeneeneeneeneeResultaatKnoop = new ResultaatBlad(new VegetatieType("Tropisch savanneklimaat", ""), "Warm klimaat met nat seizoen"); ResultaatBlad neeneeneeneejaResultaatKnoop = new ResultaatBlad(new VegetatieType("Tropisch regenwoudklimaat", ""), "Warm altijd nat klimaat"); BeslissingsKnoop jaBeslissingsKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("Tw"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakConstanteParameter(0)), jajaResultaatKnoop, janeeResultaatKnoop); BeslissingsKnoop neeneejaBeslissingsKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("Tk"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakConstanteParameter(15)), neeneejajaResultaatKnoop, neeneejaneeResultaatKnoop); BeslissingsKnoop neeneeneeneeBeslissingsKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("D"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakConstanteParameter(1)), neeneeneeneejaResultaatKnoop, neeneeneeneeneeResultaatKnoop); BeslissingsKnoop neeneeneejaneeneeneejaBeslissingsKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("Tw"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakConstanteParameter(22)), neeneeneejaneeneeneejajaResultaatKnoop, neeneeneejaneeneeneejaneeResultaatKnoop); BeslissingsKnoop neeneeneejaneeneeneeBeslissingsKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("Nz"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakParameter("Nw")), neeneeneejaneeneeneejaBeslissingsKnoop, neeneeneejaneeneeneeneeResultaatKnoop); BeslissingsKnoop neeneeneejaneeneejaneeBeslissingsKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("Tw"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakConstanteParameter(22)), neeneeneejaneeneejaneejaResultaatKnoop, neeneeneejaneeneejaneeneeResultaatKnoop); BeslissingsKnoop neeneeneejaneeneejaBeslissingsKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("Tk"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakConstanteParameter(-3)), neeneeneejaneeneejajaResultaatKnoop, neeneeneejaneeneejaneeBeslissingsKnoop); BeslissingsKnoop neeneeneejaneeneeBeslissingsKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("D"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakConstanteParameter(1)), neeneeneejaneeneejaBeslissingsKnoop, neeneeneejaneeneeneeBeslissingsKnoop); BeslissingsKnoop neeneeneejaneeBeslissingsKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("Tk"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakConstanteParameter(-10)), neeneeneejaneejaResultaatKnoop, neeneeneejaneeneeBeslissingsKnoop); BeslissingsKnoop neeneeneejaBeslissingsKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("Nj"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakConstanteParameter(400)), neeneeneejajaResultaatKnoop, neeneeneejaneeBeslissingsKnoop); BeslissingsKnoop neeneeneeBeslissingsKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("Tk"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakConstanteParameter(18)), neeneeneejaBeslissingsKnoop, neeneeneeneeBeslissingsKnoop); BeslissingsKnoop neeneeBeslissingsKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("Nj"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakConstanteParameter(200)), neeneejaBeslissingsKnoop, neeneeneeBeslissingsKnoop); BeslissingsKnoop neeBeslissingsKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("Tj"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakConstanteParameter(0)), neejaResultaatKnoop, neeneeBeslissingsKnoop); BeslissingsKnoop hoofdKnoop = new BeslissingsKnoop(new Vergelijking(_parameterFactory.MaakParameter("Tw"), Operator.KleinerDanOfGelijkAan, _parameterFactory.MaakConstanteParameter(10)), jaBeslissingsKnoop, neeBeslissingsKnoop); dt.BeginKnoop = hoofdKnoop; return(dt); }
public ActionResult VerbeterVraagGraad2(Leerling leerling, VegetatieVraagViewModel vraagVM) { if (ModelState.IsValid) { try { ActionResult route = RedirectIndienNodig(leerling); if (route != null) { return(route); } DeterminatieTabel tabel = leerling.Graad.DeterminatieTabel; var determinatieVM = new DeterminatieIndexViewModel(); determinatieVM.VraagVM = new VegetatieVraagViewModel(leerling, tabel.GeefVegetatieType(leerling.Klimatogram).Foto); determinatieVM.VraagVM.GebruikersAntwoord = vraagVM.GebruikersAntwoord; determinatieVM.Antwoord = tabel.Determineer(leerling.Klimatogram).DeterminatieKnoopId; determinatieVM.Correct = true; determinatieVM.GebruikersAntwoord = determinatieVM.Antwoord; if (determinatieVM.VraagVM.GebruikersAntwoord != null && determinatieVM.VraagVM.GebruikersAntwoord.Equals(tabel.GeefVegetatieType(leerling.Klimatogram).Naam)) { determinatieVM.VraagVM.Correct = true; } else { determinatieVM.VraagVM.Correct = false; } determinatieVM.PartialViewName = leerling.Graad.Jaar == 1 ? "_Graad2jaar1" : "_Graad2jaar2"; return(View("Index", determinatieVM)); } catch (Exception exception) { ModelState.AddModelError("", exception.Message); } } return(View(vraagVM)); }
public ActionResult Index(Leerling leerling, DeterminatieIndexViewModel determinatieVM) { if (ModelState.IsValid) { try { ActionResult route = RedirectIndienNodig(leerling); if (route != null) { return(route); } DeterminatieTabel tabel = leerling.Graad.DeterminatieTabel; determinatieVM.Antwoord = tabel.Determineer(leerling.Klimatogram).DeterminatieKnoopId; determinatieVM.Correct = determinatieVM.GebruikersAntwoord.Equals(determinatieVM.Antwoord); if (determinatieVM.Correct) { if (leerling.Graad.Nummer == 1) { determinatieVM.PartialViewName = "_Graad1"; determinatieVM.AntwoordVM = new VegetatieAntwoordViewModel(tabel.GeefVegetatieType(leerling.Klimatogram).Naam, tabel.GeefVegetatieType(leerling.Klimatogram).Foto); } else { determinatieVM.VraagVM = new VegetatieVraagViewModel(leerling, tabel.GeefVegetatieType(leerling.Klimatogram).Foto); determinatieVM.PartialViewName = leerling.Graad.Jaar == 1 ? "_Graad2jaar1" : "_Graad2jaar2"; } } } catch (Exception exception) { ModelState.AddModelError("", exception.Message); } return(View(determinatieVM)); } return(View(determinatieVM)); }
private DeterminatieTabel MaakKleineDeterminatieTabel() { //Determinatietabel aanmaken DeterminatieTabel tabel = new DeterminatieTabel(); //Nieuwe vergelijking aanmaken (Tw < 10°C) Vergelijking vergelijking = new Vergelijking(); vergelijking.LinkerParameter = _parameterFactory.MaakParameter("Tw"); vergelijking.RechterParameter = _parameterFactory.MaakConstanteParameter(10); vergelijking.Operator = Operator.KleinerDan; //Ja knoop aanmaken van de eerste vergelijking //Vergelijking aanmaken van de ja knoop (Tw < 0°C) Vergelijking vergelijking2 = new Vergelijking(); vergelijking2.LinkerParameter = _parameterFactory.MaakParameter("Tw"); vergelijking2.RechterParameter = _parameterFactory.MaakConstanteParameter(0); vergelijking2.Operator = Operator.KleinerDan; //Resultaatknoop voor ja en nee Tw < 0°C DeterminatieKnoop resultaatKnoopJa = new ResultaatBlad(new VegetatieType("IJswoestijn", "../../Content/004.png"), "Koud zonder dooiseizoen"); DeterminatieKnoop resultaatKnoopNee = new ResultaatBlad(new VegetatieType("Toendra", "../../Content/001.png"), "Koud met dooiseizoen"); //Ja knoop instellen van de ja tak van de eerste vergelijking DeterminatieKnoop jaKnoop = new BeslissingsKnoop(vergelijking2, resultaatKnoopJa, resultaatKnoopNee); //Nee knoop aanmaken van de beginknoop Vergelijking vergelijking3 = new Vergelijking(); vergelijking3.LinkerParameter = _parameterFactory.MaakParameter("Tw4"); vergelijking3.RechterParameter = _parameterFactory.MaakConstanteParameter(10); vergelijking3.Operator = Operator.KleinerDan; //Resultaatknoop aanmaken van vergelijking 3 DeterminatieKnoop resultaatKnoopJa2 = new ResultaatBlad(new VegetatieType("Taiga", "../../Content/002.png"), "Koud gematigd"); //Nee knoop aanmaken van vergelijking 3 Vergelijking vergelijking4 = new Vergelijking(); vergelijking4.LinkerParameter = _parameterFactory.MaakParameter("Tk"); vergelijking4.RechterParameter = _parameterFactory.MaakConstanteParameter(18); vergelijking4.Operator = Operator.KleinerDan; //Resultaat knoop nee aanmaken van vergelijking 4 DeterminatieKnoop resultaatKnoopNee2 = new ResultaatBlad(new VegetatieType("Tropisch savanne", "../../Content/012.png"), "Warm"); //Vergelijking aanmaken van ja knoop 2 Vergelijking vergelijking5 = new Vergelijking(); vergelijking5.LinkerParameter = _parameterFactory.MaakParameter("Nj"); vergelijking5.RechterParameter = _parameterFactory.MaakConstanteParameter(400); vergelijking5.Operator = Operator.GroterDan; //Resultaat knoop nee aanmaken van vergelijking 5 DeterminatieKnoop resultaatKnoopNee4 = new ResultaatBlad(new VegetatieType("Steppe", "../../Content/005.png"), "Gematigd en droog"); //Vergelijking aanmaken van ja knoop 3 Vergelijking vergelijking6 = new Vergelijking(); vergelijking6.LinkerParameter = _parameterFactory.MaakParameter("Tk"); vergelijking6.RechterParameter = _parameterFactory.MaakConstanteParameter(-3); vergelijking6.Operator = Operator.KleinerDan; //Resultaat knoop aanmaken van vergelijking 6 DeterminatieKnoop resultaatKnoopJa3 = new ResultaatBlad(new VegetatieType("Taiga", "../../Content/002.png"), "Koel gematigd met strenge winter"); //Vergelijking aanmaken van nee knoop 3 Vergelijking vergelijking7 = new Vergelijking(); vergelijking7.LinkerParameter = _parameterFactory.MaakParameter("Tw"); vergelijking7.RechterParameter = _parameterFactory.MaakConstanteParameter(22); vergelijking7.Operator = Operator.KleinerDan; //Resultaat knoop aanmaken van vergelijking 7 DeterminatieKnoop resultaatKnoopJa4 = new ResultaatBlad(new VegetatieType("Loofbos", "../../Content/007.png"), "Koel gematigd met zachte winter"); DeterminatieKnoop resultaatKnoopNee3 = new ResultaatBlad(new VegetatieType("Hardbladige-vegetatie van de subtropen", "../../Content/010.jpg"), "Warm gematigd met natte winter"); //Nee knoop aanmaken van vergelijking 6 DeterminatieKnoop neeKnoop3 = new BeslissingsKnoop(vergelijking7, resultaatKnoopJa4, resultaatKnoopNee3); //Ja knoop aanmaken van vergelijking 5 DeterminatieKnoop jaKnoop3 = new BeslissingsKnoop(vergelijking6, resultaatKnoopJa3, neeKnoop3); //Ja knoop aanmaken van vergelijking 4 DeterminatieKnoop jaKnoop2 = new BeslissingsKnoop(vergelijking5, jaKnoop3, resultaatKnoopNee4); //Knoop aanmaken van vergelijking 4 DeterminatieKnoop neeKnoop2 = new BeslissingsKnoop(vergelijking4, jaKnoop2, resultaatKnoopNee2); //Knoop aanmaken van vergelijking 3 DeterminatieKnoop neeKnoop = new BeslissingsKnoop(vergelijking3, resultaatKnoopJa2, neeKnoop2); tabel.BeginKnoop = new BeslissingsKnoop(vergelijking, jaKnoop, neeKnoop); return(tabel); }
protected override void Seed(KlimatogrammenContext context) { try { Graad eersteGraad = new Graad() { Nummer = 1 }; Graad tweedeGraadEersteJaar = new Graad() { Nummer = 2, Jaar = 1 }; Graad tweedeGraadTweedeJaar = new Graad() { Nummer = 2, Jaar = 2 }; Graad derdeGraad = new Graad() { Nummer = 3 }; eersteGraad.Vragen = new Collection <Vraag>(); eersteGraad.Vragen.Add(new Vraag() { Parameter = _parameterFactory.MaakParameter("Warmste Maand"), VraagTekst = "Wat is de warmste maand?" }); eersteGraad.Vragen.Add(new Vraag() { Parameter = _parameterFactory.MaakParameter("Tw"), VraagTekst = "Wat is de temperatuur van de warmste maand in °C (Tw)?" }); eersteGraad.Vragen.Add(new Vraag() { Parameter = _parameterFactory.MaakParameter("Koudste Maand"), VraagTekst = "Wat is de koudste maand?" }); eersteGraad.Vragen.Add(new Vraag() { Parameter = _parameterFactory.MaakParameter("Tk"), VraagTekst = "Wat is de temperatuur van de koudste maand in °C (Tk)?" }); eersteGraad.Vragen.Add(new Vraag() { Parameter = _parameterFactory.MaakParameter("D"), VraagTekst = "Hoeveel droge maanden zijn er (D)?" }); eersteGraad.Vragen.Add(new Vraag() { Parameter = _parameterFactory.MaakParameter("Nz"), VraagTekst = "Hoeveelheid millimeter neerslag in de zomer?" }); eersteGraad.Vragen.Add(new Vraag() { Parameter = _parameterFactory.MaakParameter("Nw"), VraagTekst = "Hoeveelheid millimeter neerslag in de winter?" }); DeterminatieTabel klein = MaakKleineDeterminatieTabel(); DeterminatieTabel groot = MaakGroteDeterminatieTabel(); eersteGraad.DeterminatieTabel = klein; tweedeGraadEersteJaar.DeterminatieTabel = tweedeGraadTweedeJaar.DeterminatieTabel = derdeGraad.DeterminatieTabel = groot; Continent noordAmerika = new Continent("Noord-Amerika"); Continent zuidAmerika = new Continent("Zuid-Amerika"); Continent europa = new Continent("Europa"); Continent azie = new Continent("Azië"); Continent afrika = new Continent("Afrika"); Continent oceanie = new Continent("Oceanië"); #region "data Werelddelen" Land belgie = new Land("België"); int[] gemiddeldeNeerUkkel = { 67, 54, 73, 57, 70, 78, 75, 63, 59, 71, 78, 76 }; double[] gemiddeldeTempUkkel = { 2.5, 3.2, 5.7, 8.7, 12.7, 15.5, 17.2, 17.2, 14.4, 10.4, 2.5, 3.4 }; belgie.VoegKlimatogramToe(new Klimatogram(VormMaanden(gemiddeldeTempUkkel, gemiddeldeNeerUkkel).ToList(), 50.8, 4.35) { Locatie = "Ukkel", BeginJaar = 1961, EindJaar = 2009 }); europa.VoegLandToe(belgie); belgie.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { 2.2, 2.2, 5.3, 8.8, 12.3, 15.6, 17.0, 17.0, 14.3, 10.1, 6.0, 3.2 }, new int[] { 62, 49, 48, 49, 60, 70, 80, 80, 73, 71, 67, 67 }).ToList(), 51.2, 4.45 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Antwerpen - Deurne" }); belgie.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { -1.0, 0.2, 2.4, 6.0, 9.6, 12.8, 14.4, 14.3, 11.9, 7.7, 3.0, 0.1 }, new int[] { 90, 74, 73, 69, 77, 84, 93, 94, 89, 92, 91, 95 }).ToList(), 50.033056, 5.4 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "St-Hubert" }); belgie.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { -2.1, -1.2, 1.0, 4.8, 8.8, 12.0, 13.6, 13.4, 10.9, 6.8, 2.0, -1.1 }, new int[] { 140, 112, 103, 91, 98, 103, 106, 101, 96, 110, 124, 142 }).ToList(), 50.466944, 6.182778 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Elsenborn" }); belgie.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { 2.4, 3.0, 5.2, 8.4, 12.1, 15.1, 16.8, 16.6, 14.3, 10.3, 6.2, 3.2 }, new int[] { 51, 42, 46, 50, 59, 65, 72, 74, 72, 72, 64, 59 }).ToList(), 50.966667, 3.816667 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Gent - Melle" }); Land frankrijk = new Land("Frankrijk"); frankrijk.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { 8.6, 9.0, 10.1, 12.3, 15.7, 19.1, 21.9, 22.1, 19.9, 16.7, 12.6, 9.6 }, new int[] { 74, 70, 58, 52, 40, 19, 11, 20, 44, 87, 96, 76 }).ToList(), 41.966944, 8.8 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Ajaccio" }); frankrijk.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { 5.9, 7.1, 8.8, 11.3, 14.6, 17.8, 20.2, 19.9, 18.0, 14.0, 9.1, 6.4 }, new int[] { 100, 86, 76, 72, 77, 56, 47, 54, 74, 88, 94, 99 }).ToList(), 40.8333333, 0.7 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Bordeaux" }); frankrijk.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { 3.5, 4.5, 6.8, 9.7, 13.3, 16.4, 18.4, 18.2, 15.7, 11.8, 6.9, 4.3 }, new int[] { 54, 46, 54, 47, 63, 58, 54, 52, 54, 56, 56, 56 }).ToList(), 48.85661, 2.35222 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Parijs" }); europa.Landen.Add(frankrijk); Land griekenland = new Land("Griekenland"); griekenland.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { 10.0, 10.5, 12.4, 16.0, 20.6, 25.0, 27.8, 24.3, 19.3, 15.4, 12.0, 9.0 }, new int[] { 45, 48, 44, 25, 14, 6, 6, 8, 10, 48, 51, 66 }).ToList(), 37.9, 23.716667 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Athene" }); griekenland.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { 5.0, 6.7, 9.6, 14.2, 19.5, 24.2, 26.5, 25.8, 21.8, 16.1, 10.9, 6.7 }, new int[] { 37, 40, 46, 36, 44, 32, 26, 21, 26, 41, 58, 53 }).ToList(), 40.64006, 22.94442 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Thessaloniki" }); griekenland.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { 11.7, 12.0, 16.6, 16.7, 20.5, 24.7, 26.9, 26.9, 24.6, 20.6, 16.4, 13.4 }, new int[] { 148, 118, 75, 24, 14, 3, 0, 0, 7, 64, 88, 145 }).ToList(), 36.43496, 28.066667 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Rhodos" }); Land kameroen = new Land("Kameroen"); kameroen.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { 23.7, 25.3, 25.0, 24.6, 24.1, 23.4, 22.6, 23.0, 23.1, 23.3, 23.7, 23.7 }, new int[] { 17, 51, 140, 180, 220, 162, 70, 102, 254, 296, 111, 25 }).ToList(), 3.833333, 11.516667 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Yaounde" }); Land brazillie = new Land("Brazillië"); brazillie.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { 21.6, 21.8, 22.0, 21.4, 20.2, 19.1, 19.1, 21.2, 22.5, 22.1, 21.7, 21.5 }, new int[] { 241, 215, 189, 124, 39, 9, 12, 13, 52, 172, 238, 249 }).ToList(), -14.23500, -51.92528 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Brasilia" }); Land australie = new Land("Australië"); australie.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { 24.2, 24.6, 22.7, 19.2, 16.0, 13.9, 13.0, 13.2, 14.5, 16.3, 19.1, 21.8 }, new int[] { 9, 14, 16, 47, 103, 168, 156, 111, 71, 46, 23, 9 }).ToList(), -31.95351, 115.85705 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Perth" }); Land thailand = new Land("Thailand"); thailand.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { 25.9, 27.4, 28.7, 29.7, 29.2, 28.7, 28.3, 28.1, 27.8, 27.6, 26.9, 25.6 }, new int[] { 9, 30, 29, 65, 220, 149, 155, 197, 344, 242, 48, 10 }).ToList(), 13.75633, 100.56666666 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Bangkok" }); Land witRusland = new Land("Wit-Rusland"); witRusland.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { -6.9, -5.8, -1.4, 6.0, 12.9, 16.1, 17.3, 16.5, 11.7, 6.3, 0.8, -3.8 }, new int[] { 40, 34, 42, 42, 62, 83, 88, 72, 60, 49, 52, 53 }).ToList(), 53.90454, 27.56152 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Minsk" }); Land rusland = new Land("Rusland"); rusland.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { -41.0, -36.0, -22.0, -6.1, 6.7, 15.4, 18.7, 14.9, 5.7, -8.5, -29, -39 }, new int[] { 9, 7, 6, 10, 18, 37, 39, 37, 29, 20, 16, 12 }).ToList(), 62.03333, 129.73333 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Jakutsk" }); Land vs = new Land("Usa"); vs.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { -26.0, -27.7, -26.0, -18.8, -6.9, 1.3, 3.9, 2.2, -0.7, -10.1, -18.9, -23.7 }, new int[] { 4, 4, 5, 5, 5, 7, 25, 23, 14, 11, 6, 5 }).ToList(), 71.29056, -156.78861 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Barrow, Alaska" }); vs.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { -2.3, 1.2, 5.4, 9.8, 14.9, 20.6, 25.5, 24.2, 18.4, 11.8, 4.9, -1.3 }, new int[] { 28, 31, 49, 54, 46, 24, 21, 22, 33, 37, 33, 36 }).ToList(), 40.783333, -111.89105 ) { BeginJaar = 1951, EindJaar = 1990, Locatie = "Salt Lake City" }); australie.VoegKlimatogramToe(new Klimatogram(VormMaanden( new double[] { 28.7, 27.8, 24.9, 20.2, 15.6, 12.4, 11.6, 14.2, 18.2, 22.8, 25.7, 27.8 }, new int[] { 42, 3, 52, 17, 18, 14, 16, 12, 11, 19, 27, 36 }).ToList(), -23.70021, 133.883333 ) { BeginJaar = 1961, EindJaar = 1990, Locatie = "Alice Springs" }); europa.VoegLandToe(griekenland); europa.VoegLandToe(witRusland); azie.VoegLandToe(rusland); azie.VoegLandToe(thailand); noordAmerika.VoegLandToe(vs); afrika.VoegLandToe(kameroen); zuidAmerika.VoegLandToe(brazillie); oceanie.VoegLandToe(australie); #endregion eersteGraad.Continenten = new Collection <Continent>(); eersteGraad.Continenten.Add(europa); var contintent = new[] { europa, noordAmerika, zuidAmerika, azie, afrika, oceanie }; tweedeGraadEersteJaar.Continenten = new Collection <Continent>(); tweedeGraadTweedeJaar.Continenten = new Collection <Continent>(); derdeGraad.Continenten = new Collection <Continent>(); foreach (var item in contintent) { tweedeGraadEersteJaar.Continenten.Add(item); tweedeGraadTweedeJaar.Continenten.Add(item); derdeGraad.Continenten.Add(item); } context.Graden.AddRange(new[] { eersteGraad, tweedeGraadEersteJaar, tweedeGraadTweedeJaar, derdeGraad }); context.SaveChanges(); } catch (DbEntityValidationException e) { string s = "Fout creatie database "; foreach (var eve in e.EntityValidationErrors) { s += String.Format("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.GetValidationResult()); foreach (var ve in eve.ValidationErrors) { s += String.Format("- Graad: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } throw new Exception(s); } }
/// <summary> /// Maakt de determinatietabel aan /// Zie DeterminatieTabel mock afbeelding ter referentie en verduidelijking /// </summary> /// <returns>Retourneert een determinatietabel</returns> public DeterminatieTabel MaakDeterminatieTabelEersteGraad() { //Determinatietabel aanmaken DeterminatieTabel tabel = new DeterminatieTabel(); //Factory aanmaken voor parameters ParameterFactory parameterFactory = new ParameterFactory(); //Nieuwe vergelijking aanmaken (Tw < 10°C) Vergelijking vergelijking = new Vergelijking(); vergelijking.LinkerParameter = parameterFactory.MaakParameter("Tw"); vergelijking.RechterParameter = parameterFactory.MaakConstanteParameter(10); vergelijking.Operator = Operator.KleinerDan; //Ja knoop aanmaken van de eerste vergelijking //Vergelijking aanmaken van de ja knoop (Tw < 0°C) Vergelijking vergelijking2 = new Vergelijking(); vergelijking2.LinkerParameter = parameterFactory.MaakParameter("Tw"); vergelijking2.RechterParameter = parameterFactory.MaakConstanteParameter(0); vergelijking2.Operator = Operator.KleinerDan; //Resultaatknoop voor ja en nee Tw < 0°C DeterminatieKnoop resultaatKnoopJa = new ResultaatBlad(new VegetatieType("", ""), "Koud zonder dooiseizoen"); DeterminatieKnoop resultaatKnoopNee = new ResultaatBlad(new VegetatieType("", ""), "Koud met dooiseizoen"); //Ja knoop instellen van de ja tak van de eerste vergelijking DeterminatieKnoop jaKnoop = new BeslissingsKnoop(vergelijking2, resultaatKnoopJa, resultaatKnoopNee); //Nee knoop aanmaken van de beginknoop Vergelijking vergelijking3 = new Vergelijking(); vergelijking3.LinkerParameter = parameterFactory.MaakParameter("Tw4"); vergelijking3.RechterParameter = parameterFactory.MaakConstanteParameter(10); vergelijking3.Operator = Operator.KleinerDan; //Resultaatknoop aanmaken van vergelijking 3 DeterminatieKnoop resultaatKnoopJa2 = new ResultaatBlad(new VegetatieType("", ""), "Koud gematigd"); //Nee knoop aanmaken van vergelijking 3 Vergelijking vergelijking4 = new Vergelijking(); vergelijking4.LinkerParameter = parameterFactory.MaakParameter("Tk"); vergelijking4.RechterParameter = parameterFactory.MaakConstanteParameter(18); vergelijking4.Operator = Operator.KleinerDan; //Resultaat knoop nee aanmaken van vergelijking 4 DeterminatieKnoop resultaatKnoopNee2 = new ResultaatBlad(new VegetatieType("", ""), "Warm"); //Vergelijking aanmaken van ja knoop 2 Vergelijking vergelijking5 = new Vergelijking(); vergelijking5.LinkerParameter = parameterFactory.MaakParameter("Nj"); vergelijking5.RechterParameter = parameterFactory.MaakConstanteParameter(400); vergelijking5.Operator = Operator.GroterDan; //Resultaat knoop nee aanmaken van vergelijking 5 DeterminatieKnoop resultaatKnoopNee4 = new ResultaatBlad(new VegetatieType("", ""), "Gematigd en droog"); //Vergelijking aanmaken van ja knoop 3 Vergelijking vergelijking6 = new Vergelijking(); vergelijking6.LinkerParameter = parameterFactory.MaakParameter("Tk"); vergelijking6.RechterParameter = parameterFactory.MaakConstanteParameter(-3); vergelijking6.Operator = Operator.KleinerDan; //Resultaat knoop aanmaken van vergelijking 6 DeterminatieKnoop resultaatKnoopJa3 = new ResultaatBlad(new VegetatieType("", ""), "Koel gematigd met strenge winter"); //Vergelijking aanmaken van nee knoop 3 Vergelijking vergelijking7 = new Vergelijking(); vergelijking7.LinkerParameter = parameterFactory.MaakParameter("Tw"); vergelijking7.RechterParameter = parameterFactory.MaakConstanteParameter(22); vergelijking7.Operator = Operator.KleinerDan; //Resultaat knoop aanmaken van vergelijking 7 DeterminatieKnoop resultaatKnoopJa4 = new ResultaatBlad(new VegetatieType("", ""), "Koel gematigd met zachte winter"); DeterminatieKnoop resultaatKnoopNee3 = new ResultaatBlad(new VegetatieType("", ""), "Warm gematigd met natte winter"); //Nee knoop aanmaken van vergelijking 6 DeterminatieKnoop neeKnoop3 = new BeslissingsKnoop(vergelijking7, resultaatKnoopJa4, resultaatKnoopNee3); //Ja knoop aanmaken van vergelijking 5 DeterminatieKnoop jaKnoop3 = new BeslissingsKnoop(vergelijking6, resultaatKnoopJa3, neeKnoop3); //Ja knoop aanmaken van vergelijking 4 DeterminatieKnoop jaKnoop2 = new BeslissingsKnoop(vergelijking5, jaKnoop3, resultaatKnoopNee4); //Knoop aanmaken van vergelijking 4 DeterminatieKnoop neeKnoop2 = new BeslissingsKnoop(vergelijking4, jaKnoop2, resultaatKnoopNee2); //Knoop aanmaken van vergelijking 3 DeterminatieKnoop neeKnoop = new BeslissingsKnoop(vergelijking3, resultaatKnoopJa2, neeKnoop2); tabel.BeginKnoop = new BeslissingsKnoop(vergelijking, jaKnoop, neeKnoop); return(tabel); }
public void Init() { _determinatieTabel = new DeterminatieTabelMock().MaakDeterminatieTabelEersteGraad(); _klimatogramMock = new KlimatogramMockFactory().MaakKlimatogramMock(); }