|
|
|
@ -0,0 +1,43 @@
|
|
|
|
|
<!-- vim: set ft=markdown: -->
|
|
|
|
|
<!-- LTeX: language=de-DE -->
|
|
|
|
|
<!-- SPDX-License-Identifier: LGPL-3.0-or-later -->
|
|
|
|
|
# Praxisaufgabe 3 Einführung in die Computergrafik
|
|
|
|
|
|
|
|
|
|
## Team
|
|
|
|
|
|
|
|
|
|
* Simon Bruder, Matrikelnummer: 5075324
|
|
|
|
|
|
|
|
|
|
## Bearbeitete Zusatzaufgaben
|
|
|
|
|
|
|
|
|
|
* Höhenlinien
|
|
|
|
|
* Displayliste
|
|
|
|
|
* Rekursive Transformation
|
|
|
|
|
|
|
|
|
|
## Hinweise
|
|
|
|
|
|
|
|
|
|
### Projektaufbau
|
|
|
|
|
|
|
|
|
|
Die vorgegebene Ordnerstruktur wurde beibehalten.
|
|
|
|
|
Es wurde jedoch die `CMakeLists.txt`-Datei in das Wurzelverzeichnis verschoben,
|
|
|
|
|
um einen üblichen Aufbau des Projektes zu erhalten,
|
|
|
|
|
und es wurden die nicht benötigten Verzeichnisse (`build`, `src_solution`) entfernt,
|
|
|
|
|
um einen Stand zu erhalten, der tauglich für Versionskontrolle ist.
|
|
|
|
|
|
|
|
|
|
Das Projekt kann (abweichend von der Ausgangskonfiguration)
|
|
|
|
|
mit folgenden (für CMake-Projekte übliche) Befehlen gebaut werden:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
# in `u03`
|
|
|
|
|
mkdir -p build
|
|
|
|
|
cd build
|
|
|
|
|
cmake ..
|
|
|
|
|
make -j$(nproc)
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### Höhenlinien
|
|
|
|
|
|
|
|
|
|
Für eine effizientere Ausführung
|
|
|
|
|
wurde zur Unterscheidung der Fälle des Marching-Squares-Algorithmus ein Bitfeld verwendet.
|
|
|
|
|
Um lesbaren Code zu erhalten,
|
|
|
|
|
wurde die Syntax für Binärliterale (z. B. `0b0101`) verwendet,
|
|
|
|
|
welche Teil von C++14 ist.
|