From 5b07b8bc614496062e11fee76d42071ef59a68b3 Mon Sep 17 00:00:00 2001 From: Admin Date: Sun, 14 Jun 2026 15:21:06 +0000 Subject: [PATCH] Add document --- ...ruktion-und-Visualisierung-von-Geb-uden.md | 77 +++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 Entwicklung-eines-Java-Programms-zur-Konstruktion-und-Visualisierung-von-Geb-uden.md diff --git a/Entwicklung-eines-Java-Programms-zur-Konstruktion-und-Visualisierung-von-Geb-uden.md b/Entwicklung-eines-Java-Programms-zur-Konstruktion-und-Visualisierung-von-Geb-uden.md new file mode 100644 index 0000000..5f03bb5 --- /dev/null +++ b/Entwicklung-eines-Java-Programms-zur-Konstruktion-und-Visualisierung-von-Geb-uden.md @@ -0,0 +1,77 @@ +--- +typ: Projektaufgabe A Einführung in die Programmierung Wintersemester 23/24 +titel: Entwicklung eines Java-Programms zur Konstruktion und Visualisierung von Gebäuden +datum: unbekannt +sicherheit: hoch +--- + +# Entwicklung eines Java-Programms zur Konstruktion und Visualisierung von Gebäuden + +Projektaufgabe A Einführung in die Programmierung Wintersemester 23/24 +Projektaufgabe A +Aufgabenstellung +Ziel dieser Projektarbeit ist die Entwicklung eines Java-Programms zur Konstruktion und +Visualisierung von Gebäuden. Das Programm soll über eine benutzerfreundliche grafische +Oberfläche verfügen, über die Wände eingegeben und das Gebäudemodell bearbeitet wer- +den können. Zur Visualisierung soll das in den Übungen vorgestellte 3D-Paket verwendet +werden. +Abbildung 1: Beispieloberfläche einer Java-Anwendung zur Konstruktion und Visualisie- +rung von Gebäuden. +Mindestbearbeitungsumfang +Um die Kursarbeit zu bestehen, muss Ihre Anwendung den folgenden Mindestumfang an +Funktionen aufweisen: +• Erstellung eines UML-Klassendiagramms zur Definition von Klassen und ihrer Be- +ziehungen, um das Objektmodell des Gebäudes abzubilden. +• Definieren Sie primitive Objekte für die Darstellung von Etagen, Wänden, Decken +und Türen und implementieren Sie entsprechende Klassen, um die Eigenschaften +und Methoden zur Manipulation jedes Elements zu definieren. +• Implementieren Sie eine Objektverwaltung, die die Erstellung, Speicherung und Ma- +nipulation der modellierten Gebäudeelemente ermöglicht, einschließlich Methoden +zur Platzierung, Verschiebung und Änderung der Eigenschaften der Elemente. + +Projektaufgabe A Einführung in die Programmierung Wintersemester 23/24 +• Entwickeln Sie eine benutzerfreundliche GUI mit Interaktionsmöglichkeiten wie dem +Platzieren, Bearbeiten, Hinzufügen und Löschen von Gebäudeelementen. +• Integrieren Sie eine 3D-Visualisierungsfunktion, um den Benutzern eine realistische +Vorschau des konstruierten Gebäudes zu bieten und stellen Sie sicher, dass die 3D- +Darstellung die modellierten Gebäudeelemente korrekt und ansprechend darstellt. +Hinweis: Die Entwicklung einer GUI bedeutet nicht zwingend, dass der Viewer in die gra- +fische Benutzeroberfläche eingebettet werden muss. Alternativ können Sie erwägen, zwei +separate Fenster zu verwenden: eines für den Viewer und eines für die GUI-Interaktionen. +Erweiterter Bearbeitungsumfang +Um die Studienarbeit mit einer besseren Note abzuschließen, sollten Sie den Funktions- +umfang Ihrer Applikation gegenüber der Minimalversion erweitern. Je umfangreicher Ihr +Programm erweitert wird, desto besser kann Ihre Note ausfallen. Beispiele für mögliche +Erweiterungen könnten sein: +• Erweitern Sie das Objektmodell, um zusätzliche Gebäudelemente wie Fenster, Trep- +pen oder Möbel zu unterstützen und implementieren Sie entsprechende Klassen und +Methoden zur Modellierung und Manipulation dieser neuen Elemente. +• Implementieren Sie Kollisionsprüfungen und Validierungen, um sicherzustellen, dass +platzierte Gebäudeelemente sich nicht überlappen oder im Raum schweben. +• Implementieren Sie Funktionen zum Exportieren und Importieren von Gebäude- +modellen als .csv-Datei. +• Implementieren Sie die Möglichkeit für Benutzer, benutzerdefinierte Gebäudekom- +ponenten zu erstellen und in das Programm zu integrieren. +• Erstellung von Analysewerkzeugen, mit dem Gebäudestatistiken angezeigt werden +können (Anzahl Wände/Türen/Räume, Betonvolumen, Raumvolumen etc.) +Hinweise zur Projektarbeit +• Programmcode, Kommentare und Diagramme müssen selbst erstellt werden. Quell- +code, der von anderen Gruppen oder aus dem Internet kopiert wurde, wird als +Täuschungsversuch geahndet. +• Benutzen Sie keine externen Bibliotheken oder Klassen aus dem Internet, mit Aus- +nahme der gegebenen ICEB.jar und Klassen aus der Java-Standardbibliothek (Pa- +kete java.* und javax.*). +• Benutzen Sie keine Programme, die UML-Diagramme automatisiert aus Code er- +zeugen. Alle UML-Diagramme müssen selbst erstellt sein. Sie können dafür Pro- +gramme wie diagrams.net benutzen, oder die Diagramme per Hand zeichnen und +einscannen. + +Projektaufgabe A Einführung in die Programmierung Wintersemester 23/24 +• Fügen Sie Namen und Matrikelnummern ihrer Gruppenmitglieder zu jeder von +Ihnen erstellten Klasse als Kommentar hinzu. Verpacken Sie ihr Projekt mit allen +Quelldateien und Diagrammen in einer zip-Datei und laden diese in dem vorgesehen- +den Dateiupload in Moodle hoch. Sie können ihr Projekt aus IntelliJ als zip-Datei +exportieren über Datei -> Export. +• Bei der Bewertung von Programmcode wird Wert auf Sauberkeit und Code-Qualität +gesetzt. Verwenden Sie aussagekräftige Variablen- und Klassennamen und kommen- +tieren Sie kritische Stellen in Ihrem Code.