Ich arbeite an einer Aufgabe, die versucht, eine 2D-Skizze mit Faltfalten in eine vollständige 3D-Darstellung umzuwandeln. Rote Linien sind Täler und Blue Mountains/Tops. Ich möchte die transformierten/gemappten Koordinaten {P1 '... P8'} berechnen. Ich habe keine gute Software gefunden, die das automatisch machen könnte, würde sich aber über Tipps freuen.Ein Blatt Papier falten (Computer Vision)
- a - Winkel Faltung
- P -
- E Koordinaten - Element
- blaue Linie - gefaltet Berg
- rote Linie - gefaltet Tal
Folded mit a1 = a2 = a3 = 90 ° (pi/2 rad) (gefalzt Winkel) und Pfeile als surfare Normalen
Ich verwende Matlab aber ich bin für allgemeine Algorithmen um dieses Problem zu lösen.
Unter der Annahme Punkt P0 in origo und Elemente befestigt E1 nicht seine Koordinaten ändern, wie soll ich die Transformation am besten beschreiben? Soll ich inhomogene oder homogene Koordinaten, Polarkoordinaten verwenden?
Zum Beispiel hängt Punkt P8 von den anderen Koordinaten ab, die von den Winkeln abhängen.
Ich nehme an, ich könnte eine Art Adjazenzmatrix für die Punkte (Knoten) und/oder eine Matrix verwenden, die jedes Element mit seinen Knoten koppelt. Zum Beispiel: [E1 P0 P4 P5 P1; E2 P1 P5 P6 P2; ...]
Die Transformation für jede Koordinate ist Transformation + Rotation und die Transformation hängt von der Koordinate/Element ab. Aber es wird schwierig, wenn mehrere Elemente verbunden sind ...
Wie kann ich ein 2D- "Papier" mit Faltungsmustern sauber in 3D-Koordinaten umwandeln?
Garantieren Sie, dass das Papier nicht ineinander läuft? Auch was ist die Faltungsreihenfolge (Rotation ist NICHT kommutativ)? – tskuzzy