Die Leonardo-Funktion Splineline zieht eine gekrümmte Linie von einem Anfangspunkt zu einem Endpunkt, wobei die Linienkrümmung durch zusätzliche Kurvenpunkte "Stützpunkte" dazwischen beeinflußt wird. Die Stützpunkte werden von der Kurve im allgemeinen nicht durchlaufen.
Die Funktion ähnelt der WIN32 API-Funktion PolyBezier, jedoch ist die Anzahl der Stützpunkte zwischen Anfangs- und Endpunkt nicht wie bei PolyBezier auf 2 eingeschränkt und es wird ein anderes mathematisches Verfahren zur Berechnung der Interpolationswerte angewendet. Splineline ist auch für 16-Bit Windows verfügbar.
Splineline berechnet für jeden Stützpunkt jeweils 5 interpolierte Punkte und gibt diese dann zum Zeichnen an die Windows API-Funktion Polyline.
BOOL API |
Splineline( |
|
HDC |
hDC, |
|
LPPOINT |
lpPoints, |
|
int |
cPoints); |
hDC |
HDC |
Handle des Windows Device Contexts auf den die Zeichenoperation ausgegeben werden soll, z.B. von der Windows API-Funktion GetDC |
lpPoints |
POINT[] |
Zeiger auf ein Array von POINT-Strukturen mit Angaben von x und y-werten von Anfangs/Stütz - und Endpunkten. |
cPoints |
int |
Anzahl der Werte im Array lpPoints. Es müssen mindestens 3 Werte angegeben werden. |
Rückgabewert: |
||
TRUE bei erfolgreicher Ausführung. |
||
Beispiel: Eine gekrümmte Kurve aus Anfangs/Endwert und 3 Stützwerten |
||