ein Weg, ausgedrückt als eine Reihe von 2D-Punkten Gegeben:Pfade zu Triangle Liste (.NET/C#)
Point[] path = new Point[4]
{
new Point(0,0),
new Point(10,0),
new Point(10,10),
new Point(0,10),
};
... Hier eine Kiste.
Was ist der beste Weg, um dies in eine Liste von Dreiecken (die den Pfad füllen) zu konvertieren, die in einer 3D-Anwendung verwendet werden? Angesichts dessen, dass dies nur ein einfaches Beispiel ist und der Pfad in der Realität ziemlich komplex sein kann. Gibt es bereits etwas im Framework, vielleicht System.Drawing oder in WPF, was dabei helfen würde?
Edit: (Nach dem Kommentar von Samuel) Idealerweise I'l mit der Lage sein, wie sowohl konvexen und konkaven Polygone zu behandeln, sonst die Grafik wird manuell aus vielen konvexen Polygonen sein ..
Ist der Pfad ein konvexes Polygon? Wenn es so einfach ist, wird es sonst ziemlich schwierig. – Samuel
Im Idealfall würde ich gerne mit Konkav- und Konvex-Polygonen umgehen können. – Rob
Rob, siehe meine Antwort unten. Es würde mit beiden umgehen, aber ein bisschen mehr Aufwand sein. Es erfordert jedoch besondere Sorgfalt (über die meisten einfachen Algorithmen hinaus), mit degenerierten Polygonen umzugehen. –