private void Window_Loaded(object sender, RoutedEventArgs e) { WorldGeneration worldGeneration = new WorldGeneration(); Galaxy galaxy = worldGeneration.GenerateGalaxy(); TreeViewItem starSystemCount = new TreeViewItem(); TreeViewItem planetCount = new TreeViewItem(); TreeViewItem moonCount = new TreeViewItem(); TreeViewItem moonACount = new TreeViewItem(); TreeViewItem moonBCount = new TreeViewItem(); TreeViewItem moonCCount = new TreeViewItem(); treeView.Items.Add(starSystemCount); treeView.Items.Add(planetCount); treeView.Items.Add(moonCount); moonCount.Items.Add(moonACount); moonCount.Items.Add(moonBCount); moonCount.Items.Add(moonCCount); foreach (Sector sector in galaxy.Sectors) { TreeViewItem sectorItem = new TreeViewItem { Header = string.Concat("Sector: ", sector.Id) }; sectorItem.Items.Add(string.Concat("System Count: ", sector.StarSystemCount)); sectorItem.Items.Add(string.Concat("Distance from core: ", sector.DistanceFromCore)); treeView.Items.Add(sectorItem); foreach (StarSystem starSystem in sector.SectorGrid) { if (starSystem != null) { TreeViewItem starSystemItem = new TreeViewItem { Header = string.Concat("System: ", starSystem.Id) }; TreeViewItem starItem = new TreeViewItem { Header = string.Concat("Star: ", starSystem.Star.Id + 1) }; sectorItem.Items.Add(starSystemItem); starSystemItem.Items.Add(starItem); starItem.Items.Add(string.Concat("Luminosity Class: ", starSystem.Star.LuminosityClass)); starItem.Items.Add(string.Concat("Spectral Class: ", starSystem.Star.SpectralClass)); starItem.Items.Add(string.Concat("Luminosity: ", starSystem.Star.Luminosity, " Solar Luminosities")); starItem.Items.Add(string.Concat("Magnitude: ", starSystem.Star.Magnitude)); starItem.Items.Add(string.Concat("Temperature: ", starSystem.Star.Temperature, " Kelvins")); starItem.Items.Add(string.Concat("Radius: ", starSystem.Star.Radius, " Solar Radii")); starItem.Items.Add(string.Concat("Mass: ", starSystem.Star.Mass, " Solar Masses")); starItem.Items.Add(string.Concat("Inner Hab Zone Radius: ", starSystem.Star.HabitableZoneInnerRadius, " AU")); starItem.Items.Add(string.Concat("Outer Hab Zone Radius: ", starSystem.Star.HabitableZoneOuterRadius, " AU")); foreach (SolarBodies.Planet planet in starSystem.Planets) { TreeViewItem planetsItem = new TreeViewItem { Header = string.Concat("Planet: ", planet.Id) }; starSystemItem.Items.Add(planetsItem); planetsItem.Items.Add(string.Concat("AU from Star: ", planet.AuFromStar, " AU")); planetsItem.Items.Add(string.Concat("Radius: ", planet.Radius, " Km")); planetsItem.Items.Add(string.Concat("Volume: ", planet.Volume, " Km^3")); planetsItem.Items.Add(string.Concat("Mass: ", planet.Mass, " Kg")); planetsItem.Items.Add(string.Concat("Gravity: ", planet.Gravity, " Meters/second")); planetsItem.Items.Add(string.Concat("AxialTilt: ", planet.AxialTilt, " Degrees")); planetsItem.Items.Add(string.Concat("Average Density: ", planet.AverageDensity, " grams/meter^3")); planetsItem.Items.Add(string.Concat("Atmospheric Density: ", planet.AtmosphericDensity, " Random number between 1 and 100")); planetsItem.Items.Add(string.Concat("Solar Insolation: ", planet.SolarInsolation, " W/m^2")); planetsItem.Items.Add(string.Concat("Base Temperature: ", planet.BaseTemperature, " Kelvins")); planetsItem.Items.Add(string.Concat("Surface Temperature: ", planet.AverageSurfaceTemperature, " Kelvins")); planetsItem.Items.Add(string.Concat("Breathable Atmosphere: ", planet.BreathableAtmosphere)); planetsItem.Items.Add(string.Concat("Fauna BioDiversity: ", planet.FaunaBioDiversity)); planetsItem.Items.Add(string.Concat("Flora BioDiversity: ", planet.FloraBioDiversity)); planetsItem.Items.Add(string.Concat("Geologic Activity Level: ", planet.GeologicActivityLevel)); planetsItem.Items.Add(string.Concat("Landmass Ratio: ", planet.LandmassRatio)); planetsItem.Items.Add(string.Concat("Rotational Perioud: ", planet.RotationalPeriod)); TreeViewItem childMoons = new TreeViewItem { Header = $"Moon Count: {planet.ChildMoons.Count}" }; planetsItem.Items.Add(childMoons); foreach (SolarBodies.Moon moon in planet.ChildMoons) { TreeViewItem moonItem = new TreeViewItem { Header = $"Moon: {moon.Id}" }; childMoons.Items.Add(moonItem); moonItem.Items.Add(string.Concat("ID: ", moon.Id)); moonItem.Items.Add(string.Concat("Km from Parent: ", moon.KilometersFromParent)); moonItem.Items.Add(string.Concat("Radius: ", moon.Radius, " Km")); moonItem.Items.Add(string.Concat("Volume: ", moon.Volume, " Km^3")); moonItem.Items.Add(string.Concat("Mass: ", moon.Mass, " Kg")); moonItem.Items.Add(string.Concat("Gravity: ", moon.Gravity, " Meters/second")); moonItem.Items.Add(string.Concat("AxialTilt: ", moon.AxialTilt, " Degrees")); moonItem.Items.Add(string.Concat("Average Density: ", moon.AverageDensity, " grams/meter^3")); moonItem.Items.Add(string.Concat("Atmospheric Density: ", moon.AtmosphericDensity, " Random number between 1 and 100")); moonItem.Items.Add(string.Concat("Surface Temperature: ", moon.AverageSurfaceTemperature, " Kelvins")); moonItem.Items.Add(string.Concat("Breathable Atmosphere: ", moon.BreathableAtmosphere)); moonItem.Items.Add(string.Concat("Fauna BioDiversity: ", moon.FaunaBioDiversity)); moonItem.Items.Add(string.Concat("Flora BioDiversity: ", moon.FloraBioDiversity)); moonItem.Items.Add(string.Concat("Geologic Activity Level: ", moon.GeologicActivityLevel)); moonItem.Items.Add(string.Concat("Landmass Ratio: ", moon.LandmassRatio)); moonItem.Items.Add(string.Concat("Rotational Perioud: ", moon.RotationalPeriod)); } TreeViewItem childRings = new TreeViewItem { Header = $"Ring Count: {planet.ChildRings.Count}" }; planetsItem.Items.Add(childRings); foreach (SolarBodies.Ring childRing in planet.ChildRings) { TreeViewItem ringItem = new TreeViewItem { Header = $"Ring: {childRing.Id}" }; planetsItem.Items.Add(ringItem); } } } } } starSystemCount.Header = string.Concat("Star System Count: ", worldGeneration._starSystemCount); planetCount.Header = string.Concat("Planet Count: ", worldGeneration._planetCount); moonCount.Header = string.Concat("Moon Count: ", worldGeneration._moonCount); moonACount.Header = string.Concat("Moon A Count: ", worldGeneration._moonACount); moonBCount.Header = string.Concat("Moon B Count: ", worldGeneration._moonBCount); moonCCount.Header = string.Concat("Moon C Count: ", worldGeneration._moonCCount); }