========================================================
Projekt: gamematrix (C++ Library)
Rolle:   Projektleiter
Datei:   requirements.txt
Datum:   03.11.2025
Team:    prob3b_652
========================================================

# ----------------------------
# 1. Projektziel
# ----------------------------
Beschreiben Sie hier kurz das Ziel des Projekts:

Ziel: 
- C++-Bibliothek gamematrix.cpp erweitern. Matrizenoperationen für 3D-Transformationen bereitstellen. 

- Integration in das bestehende Spielprojekt.

- Git-Workflow: Neuer Branch für diese Woche (KW25), Änderungen committen und später in den 	Hauptbranch mergen.
- Vorgehensmodell: Wasserfall, alle Phasen strikt nacheinander.

# ----------------------------
# 2. Funktionale Anforderungen
# ----------------------------
Listen Sie alle Funktionen auf, die die Bibliothek bereitstellen soll..
Tragen Sie ein: Funktion, Eingabe, Ausgabe, kurze Beschreibung

| Funktion      | Eingabe                            | Ausgabe               | Kurzbeschreibung                       |
|---------------|------------------------------------|-----------------------|----------------------------------------|
| matmul        | 4x4 Matrix A, 4x4 Matrix B         | 4x4 Matrix            |Multipliziert zwei Matrizen und gibt    |
|		|				     |			     |das Ergebnis als neue Matrix zurück.    |
|               |                                    |                       |Prüft dabei, ob die Dimensionen         |    
|               |                                    |                       |kompatibel sind                         |
|---------------------------------------------------------------------------------------------------------------------|
| translate     | 3D Vektor                          | 4x4 Matrix            | Verschiebt Punkte oder Objekte im Raum |
|		|				     |			     | um einen gegebenen Vektor.             |
|---------------------------------------------------------------------------------------------------------------------|
| rot3D         | Winkel in °, Rotationsachse (x/y/z)| 4x4 Matrix            | Rotiert eine Matrix um eine Achse um   |
|               |                                    |                       |einen vorgegebenen Winkel               |
|---------------------------------------------------------------------------------------------------------------------|
| identity (optional)| ---                           | 4x4 Matrix            | _____________________________________  |
| _____________ | __________________________________ | ____________________  | ______________________________         |
| _____________ | __________________________________ | ____________________  | ______________________________         |

# ----------------------------
# 3. Nicht-funktionale Anforderungen
# ----------------------------
(z. B. Performance, Lesbarkeit, Wartbarkeit, Python-Kompatibilität via pybind11)

- Jede Methode soll mit einem aussagekräftigen Kommentar versehen werden.
- User soll aufgefordert werden zwei 4x4 Matritzen einzugeben bzw. einen Winkel in Grad. 
  (Architect Aufgabe -> Die Eingabe- Methode soll Prüfen ob die Form vom Winkel bzw. Matritzen den 
  Anforderungen entsprechen)
- ____________________________________________________________

# ----------------------------
# 4. Annahmen / Einschränkungen
# ----------------------------


- Wir arbeiten ausschließlich mit 4x4 Matritzen. Winkel soll in Grand eingegeben werden. ____________________________________________________________
- Variablendeklaration ausschließlich mit double# ----------------------------
# 5. Abnahmekriterien
# ----------------------------
Wie soll geprüft werden, dass die Anforderungen erfüllt sind?
(z. B. Unit-Tests, Beispielrotationen, Matrizenmultiplikation)

- Beispielrotationen
- Matritzen-Multiplikation
- 

========================================================
Hinweis:
- Diese Datei wird vom Projektleiter erstellt und gepflegt.
- Jede Phase des Projekts soll hier dokumentiert werden.
========================================================
