Code:
Ich dachte zuerst es sei ein normierter Wert der entlang der Kurve eine Position definiert
Das trifft auch zu. Der Unterschied zwischen Bogenlänge und Parameter ergibt sich aus der Berechnung von Kurven und Flächen (Bezier, BSpline und NURBS). Das geht über Polynomfunktionen, denen ein (bei Flächen zwei) Laufparameter zugrunde liegt, der für die einfachere Anwendung üblicherweise auf das Intervall 0-1 normiert wird.
Ganz einfaches Beispiel:
x(u) = u
y(u) = 0
z(u) = 0
Läuft u im Intervall von 0 bis 1 ergibt sich eine Kurve, die von 0,0,0 bis 1,0,0 läuft. Hier entspricht die Bogenlänge exakt dem Laufparameter, bei u = 0.5 ist x = 0.5. Mit
x(u) = u²
y(u) = 0
z(u) = 0
ergibt sich der selbe Start- und Endpunkt, die Kurve sieht also für's Auge genau so aus, wie die erste. Der Unterschied wird klar, wenn man u = 0.5 betrachtet: Der Punkt ist jetzt bei 0.25,0,0, also bei einem viertel der Länge.
Zitat:
U-Paramter sind die Abstandsverhältnisse der Segmente von B-Splines.
Mit Segmenten hat das wenig zu tun, den Laufparameter gibt's auch bei Kurven mit einem Segment. Meinst Du den Knotenvektor ?
Wem das zu einfach war, der kann sich hier die ganze Geschichte im Detail ansehen.
Michael
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP