Applied Geometry (CAGD)

Schattenkonstruktionen durch Platzierungen

  • Type:Bachelorarbeit
  • Date:2017
  • Author(s):David Grajzel
  • Links:Links_bearbeiten
  • Übersicht

    Das Ziel dieser Arbeit ist es — wie beim klassischen Schattenspiel — durch das Anordnen von verschiedenen vorgegebenen Objekten im dreidimensionalen Raum, einen bestimmten Schatten auf die Trägerplatte zu werfen. Es sollen möglichst wenige Objekte verwendet werden und der Zielschatten soll gut erkennbar sein.

    Bild... ...und zugehöriges Distanzfeld

    Um dies zu erreichen, werden die als Dreiecksnetz gespeicherte dreidimensionale Objekte rotiert und auf die Trägerplatte projiziert (kollimierte Beleuchtung). Die verschiedene Drehungen produzieren in der Regel unterschiedliche Schatten, die anschließend in der Ebene der Trägerplatte bewegt werden. Diese verschobene Projektionen nennen wir Schatteninstanzen. Unsere Aufgabe ist es, solche Instanzen zu finden, die eine möglichst lange gemeinsame Konturlinie mit der Zielsilhouette haben.

    Die einzelne Schatteninstanzen müssen bewertet werden. Für die Bewertung wird ein Distanzfeld verwendet, ein Puffer, der die kürzeste Entfernung zwischen einem Pixel und die Konturlinie des Zielschattens speichert. Schatteninstanzen bekommen gute Bewertungen, wenn sie viele Pixel mit kleinem Distanzwert (innerhalb des Zielschattens) abdecken.

    Die Schatteninstanzen werden anhand der Bewertungen sortiert und die beste Instanz wird auf die Trägerplatte platziert. Dadurch wird auch die Drehung und die Position des Objektes im dreidimensionalen Raum festgelegt. Bevor die nächste Instanz platziert wird, müssen alle Instanzen neu bewertet werden, weil manche Kandidaten die gleiche Fläche abdecken. Wenn die neu zu platzierende Instanz eine Bewertung aufweist, die unter einem vorgegebenen Schwellwert liegt, ist der gierige Algorithmus fertig und das Ergebnis (.stl Dreiecksnetz) wird exportiert.

    Ergebnis

    Das Resultat (Afrika) Von der Trägerplatte aufgehoben (Schatten besser sichtbar)
Datenschutz