GEOakimaParameter

Top  Previous  Next

Berechnet Spline-Koeffizienten.

Diese Funktion berechnet die Koeffizienten für die Interpolation des Kurvenverlaufs zwischen einem Splinepunkt und seinem Vorgänger. Anschließend kann mit den Funktionen GEOakimaInterpolation oder GEOakimaInterpolationArray die Kurve zwischen den beiden Punkten approximiert werden.

Beispielsweise müssten bei drei Splinepunkten die Koeffizienten zweimal berechnet werden, einmal für die Kurve zwischen dem ersten und zweiten Punkt und einmal für die Kurve zwischen dem zweiten und dritten Punkt.

Die Koeffizienten sind vom Index des Splinepunkts und von seinen Nachbarn abhängig. Das macht es erforderlich, alle Splinepunkte zu übergeben.

Parameter

xfeld[] (double)                                            [IN]

yfeld[] (double)                                            [IN]

Die x- und y-Koordinaten der Splinepunkte.

ipanz (int)                                                     [IN]

Die Anzahl der Splinepunkte.

ivnr (int)                                                        [IN]

Der Index des Punkts, für den die Koeffizienten zu berechnen sind. Er muss mindestens gleich eins und kleiner als die Anzahl der Splinepunkte sein.

koeff[] (double)                                       [OUT]

Die neu berechneten Koeffizienten, das Feld muss die entsprechende Länge besitzen.

Ergebnis

(long int)                                                   [OUT]

0 – OK :        erfolgreiche Berechnung.

1 – Fehler      :        Berechnung nicht möglich.

Deklaration

#include "basic.h"

 

long int DLLENTRY GEOakimaParameter (

     double      xfeld[],

     double      yfeld[],

     int         ipanz,

     int         ivnr,

     double      koeff[]

);

Beispiel

double koeff[9];

status = GEOakimaParameter(x, y, 6, 1, koeff);

x und y müssen die Koordinaten eines Splines mit 6 Punkten beinhalten. Die Koeffizienten für das erste Stück des Splines – zwischen den Punkten mit den Indizes 0 und 1 – werden berechnet und in koeff zurückgegeben. status muss danach den Wert 0 haben.