Kubische Kurve durch zwei Punkte

Eine kubische Polynomkurve durch zwei Punkte mit zwei freien Parametern

Worum geht's?

Bevor wir und der Diskussion der Splines zuwenden, betrachten wir erst mal eine Kurve zwischen zwei Punkten, was einem Spline-Segment entspricht.

Eine kubische Kurve - eine Polynomfunktion dritten Grades - wird beschrieben duch die vier Koeffizienten a, b, c, d mit

f(x) = a + bx + cx2 + dx3

Bedingungen

Wenn zwei Punkte P0 = (x0,y0) und P1 = (x1,y1) gegeben sind, so ergeben sich die ersten beiden Bedingungen zu

a + bx0 + cx02 + dx03 = y0 I
a + bx1 + cx12 + dx13 = y1II

Für ein bestimmtes Gleichungssystem sind zwei weitere Bedingungen erforderlich, z.B:

  1. Steigungen m0 und m1 in den beiden Punkten:
    b + 2cx0 + 3dx02 = m0, b + 2cx1 + 3dx12 = m1
  2. Steigung in m0 und Krümmung u0 in Punkt P0:
    b + 2cx0 + 3dx02 = m0, 2c + 6dx0 = u0
  3. Krümmungen u0 und u1 in den beiden Punkten:
    2c + 6dx0 = u0, 2c + 6dx1 = u1

Fall 3: Krümmungen in den beiden Punkten

Die beiden Bedingungen für die Krümmungen können zusammen mit den beiden Gleichungen für y0 und y1 direkt als Gleichungssystem aufgestellt werden

y0 = a + bx0 + cx02 + dx03  I
y1 = a + bx1 + cx12 + dx13II
u0 = 2c + 6dx0III
u1 = 2c + 6dx1IV

Hier bietet sich an, die Differenz der Krümmungen aus IV - III zu bestimmen:

u1 - u0 = 6d(x1 - x0)IV - III
d = (u1 - u0)/6(x1 - x0)   

Danach kann über Gleichungen III oder IV c bestimmt werden, und weiter über II-I b:

y1 - y0 = b(x1 - x0) + c(x12 - x02) + d(x13 - x03)II-I
b = ((y1 - y0) - c(x12 - x02) - d(x13 - x03))/(x1 - x0)   

a wird zuletzt über eine der Gleichungen I oder II bestimmt.

Graphen

Die obige und zwei weitere Möglichkeiten, eine Kurve 3. Ordnung zwischen zwei Punkte zu legen, sind in der untenstehenden Grafik dargestellt:

Drei Varianten der Bestimmung

 

Kommentare und Antworten

×

Name ist erforderlich!

Geben Sie einen gültigen Namen ein

Gültige E-Mail ist erforderlich!

Gib eine gültige E-Mail Adresse ein

Kommentar ist erforderlich!

Bemerkungen :

  • user
    tZLOlQreJMeMxB 21/11/2024 um 01:01
  • user
    zYxVtDNtrYPRay 15/11/2024 um 07:50
  • user
    NKapkFfux 09/11/2024 um 14:24
  • user
    lVaFrXsW 08/11/2024 um 18:28
  • user
    JTWrqXcfubW 03/11/2024 um 15:21
  • user
    QVlfofVpEsZ 28/10/2024 um 07:03
  • user
    AVDSTozVH 25/10/2024 um 04:58
  • user
    LyWOvjhK 16/10/2024 um 16:13
Top