2016-07-31 43 views
2

Wie lautet der Name für diesen Prozess: Konstruieren eines Polyeders aus bekannten 2D-Facetten (z. B. Dreiecke), die Verbindungsdaten für ihre Eckpunkte haben?Build-Polyeder mit bekannten Flächen

Einfacher gesagt, wenn ich alle Teile eines 3D habe und weiß, welche Ecken verbinden sollten, was ist der Prozess zur Berechnung des 3D-Objekts, nach dem sie alle verbunden sind?

Gibt es auch einen häufig verwendeten Algorithmus oder einen guten Ausgangspunkt für diese Forschung?

EDIT: Ich glaube, ich bin über Triangulation zu sprechen, aber ich will nicht die Polygone erzeugen, ich weiß schon, sie. Die Flächen müssen in 3 Dimensionen positioniert werden, so dass sie sich entsprechend verbinden.

+0

Meinst du, dass du die Form aller Gesichter kennst, aber nicht, wie sie zueinander stehen? Wie ein Papiermodell, das auseinander genommen wird? –

+0

Art von; Ich habe alle Gesichter und Informationen, um ihre Punkte miteinander zu verbinden, wenn sie eine 3D-Form sind, korrekt zusammengebaut, aber ich habe ihre Positionen oder Rotationen für ihre 3D-Form nicht. Stellen Sie sich vor, dass die Flächen der 3D-Form auf einem Blatt Papier abgeflacht sind und eine Schnur alle ihre berührenden Ecken verbindet.Was passiert, wenn die Saiten festgezogen werden - vorausgesetzt, die Gesichter kehren in ihre ursprüngliche Position zurück und auch die Verbindungen. –

+0

Das ist jetzt klarer. –

Antwort

0

Es gibt Begriffe Falten und Entfaltung, die in Computational Geometry weit verbreitet sind über solche Algorithmen zu sprechen.

Ein Beispiel ist here.

0

ich eine klassischen Art und Weise weiß nicht, dass zu erreichen, aber ich denke, man kann es wie folgt funktionieren:

  • eine Startseite auswählen und übernimmt in der XY-Ebene zu sein, mit ein Eckpunkt am Ursprung und eine Kante, die von ihm entlang der X-Achse stammt. Dies ist ausreichend, um die absolute Position des Polyeders zu bestimmen.

  • finden zwei andere Gesichter, die diesen Scheitelpunkt teilen und teilen sich die beiden von ihm stamm Kanten. Ihre Stützebenen bilden ein Dreiflächner, und wenn man die drei Winkel am gemeinsamen Eckpunkt kennt, kann man die Richtung der dritten gemeinsamen Kante finden (dies wird vermutlich etwas sphärische Trigonometrie oder Vektorgeometrie erfordern).

  • Dies ermöglicht die Transformationsmatrix aus einer Fläche (mit einem aufstrebenden Scheitel und unterschieden Flanke) zu einem anderen zu bestimmen.

  • können Sie diesen Vorgang mit anderen Tripel von Gesichtern wiederholen, jedes Mal die Transformationsmatrizen zu bestimmen.

  • durch die Transformationen kombinieren, werden Sie schließlich alle lokalen drehen Werte diejenigen global koordinieren.

Auf den Punkt gebracht, fixieren Sie eines der Gesichter, dann durch die richtigen Fäden ziehen Sie einstellen zwei angrenzenden Flächen, dann noch eine, dann noch eine und so weiter. Jedes Mal müssen Sie entsprechende Ecken/Kanten von anderen Flächen finden und ein "Dreiflächnerproblem" lösen, um eine lokale Transformationsmatrix zu finden.

Es sei denn, es gibt viele Gesichter sind oder die Koordinaten sind ungenau, dies wird die gesamte Geometrie rekonstruieren. Im Falle von Ungenauigkeiten müssen Sie möglicherweise das globale Modell verbessern, z. B. durch Anpassung der Kantenlängen mit Hilfe der Methode der kleinsten Quadrate, indem Sie die ursprüngliche Rekonstruktion verwenden. Aber das ist eine andere Geschichte.