Splines für fortgeschrittene Aufgaben

Die nächsten Beispiele sollen zeigen, daß es auch möglich ist, Splines mit vorgegebenen Ableitungen an den Enden zu zeichnen. Dazu seien die folgenden Punkte gegeben:

setpoint 0[0,0] [1,1] [2,2] [1,0] [1,2]

Die Punkte 3 und 4 sollen in diesem Beispiel die Ableitungen definieren. In der Praxis sieht dies aus, wie Abbildung A.5.

Abbildung: Hermitesche Splines
\begin{figure}\centering
\setunitlength{0.8cm}
\special{gr setlinecap}
\begin{pi...
...0-4}%
\put(10,0){\scriptsize\tt hermitespline 3,0-2,4}
\end{picture}\end{figure}

Die Praxisvorgabe ist die Aufgabe, Kurven zeichnen zu müssen, die eine bestimmte Anfangs- und/oder Endrichtung haben sollen. Nehmen wir zum Beispiel an, der Spline in Abbildung A.4 soll im linken Endpunkt senkrecht nach oben hinauslaufen und im rechten Endpunkt senkrecht nach unten einmünden. Dies kann durch die zusätzliche Vorgabe der beiden noch freien Kontrollpunkte am Anfang und Ende geschehen. Ein solchen Spline wollen wir hier Hermiteschen Spline nennen. Abbildung A.6 zeigt das Ergebnis.

Abbildung: Hermitescher Spline
\begin{figure}\centering
\begin{picture}(110,110)(0,0)
\setlinecap{round arrow}
...
...{gr dot 0-4; setdash 2pt;
poly 0,3; poly 4,2; setdash}
\end{picture}\end{figure}

Bei einem lefthermitespline dient der erste Punkt in der Liste dazu, die Richtung der Kurve zu definieren, d.h. die Kurve startet im zweiten Punkt der Liste in Richtung des ersten Punktes. Je weiter dieser erste Punkt vom Startpunkt entfernt ist desto ausgeprägter ist die Richtungsvorgabe. Ein righthermitespline ist das Analogon zum lefthermitespline, nur ist hier die Richtung im letzten Punkt der Liste vorgegeben. Die Kurve endet im vorletzten Punkt in die Richtung des letzten Punktes zeigend. Zwei solcher Kurven sind in Abbildung A.7 zu sehen. Die untere der beiden Kurven hat im linken Punkt eine vorgegebene Richtung, die obere Kurve im rechten Randpunkt.

Abbildung: Halbe Hermitesche Splines
\begin{figure}\centering
\begin{picture}(110,110)(0,0)
\setlinecap{round arrow}
...
...}
\special{gr dot 0-2; setdash 2pt; poly 1,2; setdash}
\end{picture}\end{figure}

Beim hermitespline sind die Richtungen in beiden Endpunkten der Kurve, also im zweiten und vorletzten Punkt der Liste vorgegeben. Die Kurve startet in Richtung des ersten angegebenen Punktes und endet in die Richtung des letzten angegebenen Punktes zeigend.

Eine weitere Sorte von Splines sind geschlossene Splines, wie einer in Abbildung A.8 zu sehen ist. Der Grafikbefehl ist — wie nicht anders zu erwarten — analog zum spline-Befehl closedspline und hat als Parameter eine Kontrollpunktliste. Der erste und letzte Punkt werden so miteinander verbunden, daß eine glatte Kurve entsteht.

Abbildung: Geschlossener Spline
\begin{figure}\centering
\begin{picture}(110,110)(0,0)
\setlinecap{round arrow}
...
...ine{0-3}
\special{gr dot 0-3}
\setlinecap{arrow arrow}
\end{picture}\end{figure}