Ich versuche, in einem Netz zwischen Punkten zu interpolieren. Ich habe einige Nachforschungen angestellt und nur wenige Lösungen gefunden, aber alle von ihnen erzeugen für mich merkwürdige Ergebnisse. Ich habe versucht, Cosinus und Cubic-Interpolation, aber ganze Mesh bekommt winzige Wellen, anstatt glatt zu sein.Glatte Interpolation zwischen zwei Punkten
ich versucht, dieses
mu2 = mu*mu;
a0 = y3 - y2 - y0 + y1;
a1 = y0 - y1 - a0;
a2 = y2 - y0;
a3 = y1;
return(a0*mu*mu2+a1*mu2+a2*mu+a3);
von hier: http://paulbourke.net/miscellaneous/interpolation/
ich alle Punkte ich brauche und alle arbeiten sollte, aber es ist nicht. Ich habe viel Zeit damit verbracht, es zu debuggen und nur ein Problem zu finden ist, dass es scheint, dass mu (reguläres t von 0.0 - 1.0 in der Interpolation) bei 0.0 bei P1 beginnt, wie es sollte, aber bei 1.0 ist es bei P3, während es in P2 sein sollte (Punkte P0, P1, P2, P3, wo die Interpolation zwischen P1 und P2 stattfinden soll)
Wenn es eine andere, einfachere Möglichkeit gibt, wie Interpolation zwischen zwei Punkten zu machen, lass es mich wissen. Ich möchte keine Bezier-Kurven oder ähnliches mit Kontrollpunkten machen. Ich habe nur zwei Punkte und ich kann einen Punkt auf jeder Seite wie im obigen Beispiel verwenden.
Vielen Dank für jede Hilfe Luke
Es sieht so aus, als ob Sie einen [Catmull-Rom Spline] (http://www.mvps.org/directx/articles/catmull/) verwenden möchten. –
danke Sir, das hat wie ein Charme funktioniert. Ich würde dies als richtige Antwort markieren, wenn ich könnte. – CosmicSeizure