kurse:ef05a-2021:kurven:bezier-speed-and-interpolation

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
kurse:ef05a-2021:kurven:bezier-speed-and-interpolation [2022/01/06 08:17] – [Geschwindigkeitsvektoren der Bezierkurve] Ivo Blöchligerkurse:ef05a-2021:kurven:bezier-speed-and-interpolation [2022/01/10 10:39] (current) Ivo Blöchliger
Line 1: Line 1:
 +====== Geschwindigkeitsvektoren der Bezierkurve ======
 +Gegeben sind 4 Kontrollpunkte $\vec p_0$ bis $\vec p_3$ einer kubischen Bezierkurve. Die Parametrierung der Kurve ist wie folgt:
 +
 +$$
 +\vec p(t) = (1-t)^3 \cdot \vec p_0 + 3(1-t)^2t \cdot \vec p_1  + 3 \cdot (1-t)t^2 \cdot \vec p_2 + t^3 \cdot \vec p_3
 +$$
 +
 +Als Ableitung erhält man den Geschwindigkeitsvektor $\vec v(t)$ (wobei $t$ hier der Zeit in $[0,1]$ entspricht).
 +$$
 +v(t) = -3(1-t)^2 \cdot \vec p_0 +
 +3(1-t)(1-3t)\cdot \vec p_1 +
 +3t(2-3t) \cdot \vec p_2 +
 +3t^2 \cdot \vec p_3
 +$$
 +
 +Man findet $\vec v(0) = 3(\vec p_1 - \vec p_0)$, also Tangente parallel zu $P_0P_1$.
 +Analog mit $\vec v(1) = 3(\vec p_3 - \vec p_2)$.
 +
 +D.h. also, dass man aus Start- und Endpunkt und den entsprechenden Geschwindigkeitsvektoren die Kontrollpunkte berechnen kann:
 +
 +$$ \vec p_1 = \vec p_0 + \frac{1}{3}\vec v(0)$$
 +und
 +$$ \vec p_2 = \vec p_3 - \frac{1}{3}\vec v(1)$$
 +
 +===== $\vec v(t)$ ist eine Bezierkurve 2. Grades =====
 +$\vec v(t)$ ist eine Bezierkurve 2. Grades. Der Kontrollpunkt könnte analog wie oben mit der 2. Ableitung (Beschleunigung) berechnet werden.
 +
 +
 +$$\vec a(t) = -6\,\vec p_2\,\left(3\,t-1\right)+6\,\vec p_1\,\left(3\,t-2\right)+6\,\vec p_3\,t-6\,\vec p_0\,
 + \left(t-1\right) = 
 +t \left(6 \vec p_3 - 18 \vec p_2 + 18 \vec p_1 - 6 \vec p_0 \right) + \left(6\,\vec p_2-12\,\vec p_1+6\,\vec p_0 \right)
 +$$
 +
 +
 +Interessant sind auch hier die Werte von $a(0)$ und $a(1)$:
 +$$\vec a(0) = 6\,\vec p_2-12\,\vec p_1+6\,\vec p_0$$
 +$$\vec a(1) = 6\,\vec p_3-12\,\vec p_2+6\,\vec p_1$$
 +
 +
 +Beachten Sie, dass die Beschleunigungsvektorspitzen linear entlang einer Geraden laufen (wenn man die Beschleunigungsvektoren am Nullpunkt festmacht). 
 +