Algoritmi:
Due tra gli algoritmi noti per calcolare punti
sulle curve B-Spline sono:
1) Algoritmo di de Boor
Per valutare la curva NURBS in corrispondenza di
u [
, ] si inserisce u
come nodo di molteplicità p ( = al grado della curva),ed il
punto di controllo corrispondente generato dall'ultima inserzione
giacerà sulla curva.L'algoritmo di de Boor è efficace anche per
l'intuizione geometrica che offre.
Ad esempio permette di dimostrare che il segmento
di curva relativo a [ , ] con e nodi di molteplicità p ( = al grado della curva)
è una curva razionale di Bezier,in quanto l'algoritmo di de Boor
si riduce in tale segmento all' algoritmo di De Casteljau.
2) Algoritmo di Cox-de Boor
E' l'algoritmo implementato dalla Applet per
valutare e rappresentare la curva profilo.Presenta meno
intuizione geometrica dell'
algoritmo precedente ma è efficiente per una implementazione su
calcolatore.
Sia dunque U={ ,..., } una successione non decrescente di numeri
reali(vettore dei nodi).
La i-esima base B-Spline di grado p denotata da è definita come:
= {1 se ; 0 altrimenti}
= +
L'algoritmo implementato calcola iterativamente
le ,
determina il punto corrispondente ad u appartenente alla B-Spline
non razionale in determinata dai
punti del poligono di de Boor in coordinate omogenee { , } e proietta il
punto così ottenuto in .
Fig.2 In verde sono rappresentati i punti
del poligono di de Boor,in blu i punti del poligono di controllo
delle curve di Bezier che costituiscono la curva B-Spline di
figura.