Benutzer-Werkzeuge

Webseiten-Werkzeuge


ws2425:landkarten

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
ws2425:landkarten [2025/03/12 09:38]
sebastianstannat [Dokumentation]
ws2425:landkarten [2025/03/12 19:12] (aktuell)
magdalena_lamprecht
Zeile 21: Zeile 21:
  
 ==Links== ==Links==
-[[https://​git.tu-berlin.de/​les-citoyens-de-la-lumi-re|GitLab]] +[[https://​git.tu-berlin.de/​les-citoyens-de-la-lumi-re|GitLab]] ​\\ 
 +[[https://​git.tu-berlin.de/​les-citoyens-de-la-lumi-re/​landkarte/​-/​tree/​main/​Landkarte/​2.0?​ref_type=heads|Endprodukt]]
  
 ==Aufgabenverteilung== ==Aufgabenverteilung==
 +Innerhalb unseres Projekts haben wir uns gerade zu Anfang viel gemeinsam an Probleme gesetzt, sodass es keine klare Aufgaben grenze sondern mehr einzelne Probleme gab die wir gegenseitig lösen konnten. \\
  
 ====Dokumentation==== ====Dokumentation====
Zeile 63: Zeile 63:
 Falls ein See Umriss jetzt länger als 64 ist, wird solange von der Höhe des Sees 0.01 abgezogen, bis die Länge des Sees unter 64 ist. \\ Falls ein See Umriss jetzt länger als 64 ist, wird solange von der Höhe des Sees 0.01 abgezogen, bis die Länge des Sees unter 64 ist. \\
 Was wir leider nicht mehr in der Zeit fertigstellen konnten war, dass aus den Seen dann wieder Flüsse entstehen. Das Problem, welches wir am Ende hatten war, dass der neu entstehende Fluss in vielen Fällen einfach wieder zurpck in die Mitte des Sees floss, anstatt weiter zu fließen. \\ Was wir leider nicht mehr in der Zeit fertigstellen konnten war, dass aus den Seen dann wieder Flüsse entstehen. Das Problem, welches wir am Ende hatten war, dass der neu entstehende Fluss in vielen Fällen einfach wieder zurpck in die Mitte des Sees floss, anstatt weiter zu fließen. \\
- 
  
 ==Visualisierung== ==Visualisierung==
 +Die Visualisierung Klasse hat nur eine Funktion, doch diese Funktion steuert die gesamte Generation. Diese Funktion ruft die heightmap-Funktion,​ sowie die water-Funktion und die Funktion zur Erstellung der Biome. \\
 +Mithilfe dieser Funktion kann man auch noch einige Variablen verändern. CELL_SIZE ändert die Größe einer einzigen Zelle auf der Karte, xpix und ypix verändern die Anzahl an '​Zellen'​ im Grid. Die anzahl_wasserquellen-Variable bestimmt wie viele Wasserquellen auf der Karte generiert werden. Die abstand_linien-Variable gibt an in welchem Abstand die Höhenlinien gezeichnet werden soll. \\
 +Außerdem übernimmt die Funktion auch das Einfärben der Karte und das Zeichnen der Batches mithilfe der 
 +  on_draw()
 +Funktion von Pyglet. Zuletzt hat diese Funktion noch eine
 +  on_mouse_press()
 +Funktion. Wenn man auf die Karte clickt, werden die Koordinaten des Punktes, sowie die Höhe des Punktes gedruckt. \\
  
 +==Biome==
 +Um unterschiedliche Vegitationszonen in der Karte zu ermöglichen,​ erzeugt die Klasse Biomclass mehrere zufällig positionierte Biome wie folgt. Die Biomclass erstellt ein grid (2d array) mit den maßen der Karte, welches zunächst als Standartwert '​empty'​ hat. Der Standart wert wird dann vereinzelt bei zufälligen Punkten mit den strings der Biomnamen aus bioms(dict) überschrieben. Darauf werden die Biomen eine vordefinierte Anzahl an malen verbreitet. \\
 +Die Ausbreitung verläuft anhand einer zufälligen Auswahl von Ausbreitungsverhalten. Das grid und bioms(dict) werden der Visualisierung übergeben. ​
 +Die Biome werden dann in der Visualisierung mithilfe einer Farbzuordnung,​ welche in der Biomclass definiert ist, gezeichnet. ​
 +Um weitere Landschaftsarten darzustellen besitzt die Biomclass eine Funktion ​
 +   ​welttypen()
 +die als argument einen welttyp bekommt. Sollte die Funktion kein welttypen bekommen oder einen den sie nicht kennt, wird einer der Optionen per zufall ausgewählt. Der Welttyp wirkt sich nur auf die Höhen werte der Karte aus und hat kein Einfluss auf die Biome. \\
  
 ===Fazit=== ===Fazit===
 +Wir haben im verlauf des Projekts erst gemerkt, wie kompliziert Probleme sein können, die sehr einfach wirken. Und wir haben gemerkt, wie wichtig es ist sich regelmäßig wieder zusammenzu finden und sich über Probleme und den Stand der eigenen Aufgaben auzutauschen. So wissen alle wer wo steht und welche Probleme man gemeinsam angehen sollte.\\ Gruppenmitglieder,​ die parallel noch andere Programiersprachen gelernt haben, waren sehr überzeugt von der Syntax in Python.\\
  
 === Quellen/​Literatur === === Quellen/​Literatur ===
ws2425/landkarten.1741768737.txt.gz · Zuletzt geändert: 2025/03/12 09:38 von sebastianstannat