Main Page   Modules   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

SplineLib.cpp File Reference

Implementation der B-Spline-Auswertungsfunktionen. More...

Functions


Detailed Description

Author(s):
Christoph Brzozowski


Function Documentation

void CalculateSplineBase ( float t,
int Order,
int Index,
float * KnotVector,
float * BaseMatrix )
 

Die Routine CalculateSplineBase() berechnet die für die Auswertung des Punktes an der Stelle t nötigen B-Spline-Basisfunktionen der Ordnung Order. Dabei macht sich die Routine zunutze, dass nur wenige der normalerweise zur Berechnung eines Punkts verwendeten B-Spline-Basisfunktionen ungleich 0 sind. Es werden genau diese anhand eines Dreieckschemas iterativ berechnet. Zur ermittlung der Basisfunktionen werden auch nur die Teilterme berechnet, die ungleich 0 sind. Dadurch wird die normalerweise bei der Berechnung von B-Splines auftretende Division-Durch-Null Problematik umgangen.

Precondition:
Der Parameter t muss aus dem Intervall [ KnotVector[Index] , KnotVector[Index+1] [ stammen.
BaseMatrix muss ein Zeiger auf ein genügend großen Speicherbereich sein, der mindestens (Order+2) * (Order+2) float -Elemente fassen muss.


Generated at Fri Apr 19 16:53:06 2002 for GLFramework by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001