From 48765d01509cd7522e89356b3931f799c6dac530 Mon Sep 17 00:00:00 2001 From: ganthern <nils.ganther@stud.hs-hannover.de> Date: Thu, 6 May 2021 17:26:52 +0000 Subject: [PATCH] Update Readme --- CgMath/CgPointWrangler.h | 2 +- README.md | 16 +++++++++++++--- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/CgMath/CgPointWrangler.h b/CgMath/CgPointWrangler.h index ba1be38..bc1a017 100644 --- a/CgMath/CgPointWrangler.h +++ b/CgMath/CgPointWrangler.h @@ -659,4 +659,4 @@ inline std::vector<unsigned int> CgPointWrangler::getNearestNeighborsFast( return erg; } -#endif // CGPOINTWRANGLER_H \ No newline at end of file +#endif // CGPOINTWRANGLER_H diff --git a/README.md b/README.md index afba976..59a71c3 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,8 @@ # Pointbased Rendering +Dieses Readme ist auf dem Gitlab-Server der HsH mit allen Links in den Code unter [https://lab.it.hs-hannover.de/9ue-n9b-u1/vc-pointbased-graphics](https://lab.it.hs-hannover.de/9ue-n9b-u1/vc-pointbased-graphics) verfügbar. +Dort sind auch weitere Datensets zum testen commited. + Der Code implementiert Aufgabe 1 bis 3 mit allen Extras. Die Pointcloud-Klasse wurde zum reinen Punktecontainer und @@ -11,9 +14,16 @@ Die Algorithmen sind hauptsächlich in den folgenden Dateien implementiert: * CgSceneGraph/CgSceneControl.cpp - Komposition der Algorithmen zur Verwendung im Viewport ## Aufgabe 1 -* der kd-Baum wird beim Laden und nach Vereinfachung einer Punkwolke implizit durch Sortierung der Vertices erzeugt (siehe CgSceneControl::handleEvent fall LoadPointCloudEvent, ab Zeile ). -* +* der kd-Baum wird beim Laden und nach Vereinfachung einer Punkwolke implizit durch Sortierung der Vertices erzeugt (siehe Eventhandler ab [CgSceneGraph/CgSceneControl.cpp/#L343](CgSceneGraph/CgSceneControl.cpp/#L343)). +* Rechtsklick im Viewport selektiert die k-nächsten Nachbarn des gewählten Punktes und zeigt sie in rot an (siehe Eventhandler ab [CgSceneGraph/CgSceneControl.cpp/#L174](CgSceneGraph/CgSceneControl.cpp/#L174)). +* Die Schaltflächen im ersten Tab kontrollieren die Darstellung des kd-Baums und ermöglichen es, nach Selektion einer Nachbarschaft die +Visualisierung der Normalen durch die Vertex-Farben wieder herzustellen (kd-Visualisierung ab [CgSceneGraph/CgSceneControl.cpp/#L263](CgSceneGraph/CgSceneControl.cpp/#L263)). +* der Closest-Point-To-Line Algorithmus beginnt ab [CgMath/CgPointWrangler.h/#L171](CgMath/CgPointWrangler.h/#L171). ## Aufgabe 2 +* PCA ist in [CgMath/CgPointMath.h/#L162](CgMath/CgPointMath.h/#L162) implementiert. Die zurückgegebene Struktur enthält noch einige weitere Werte, die für folgende Algorithmen nützlich sind. +* Die Normalen werden in mehreren Schritten ausgerichtet, der komplette Ablauf ist ab [CgSceneGraph/CgSceneControl.cpp/#L301](CgSceneGraph/CgSceneControl.cpp/#L301) zu sehen. -## Aufgabe 3 \ No newline at end of file +## Aufgabe 3 +* Im zweiten Tab können die Kriterien für die Vereinfachung der Punktwolke eingestellt werden. der Reset-Button verwirft die aktuelle Punktwolke und zeigt die Version, die aus der Datei geladen wurde wieder an. +* Die Vereinfachung wird ab [CgSceneGraph/CgSceneControl.cpp/#L277](CgSceneGraph/CgSceneControl.cpp/#L277) durchgeführt. -- GitLab