Ciao ragazzi.
Ho provato a fare un ‘giochino’ con GH (GH e’ imbattibile per i giochini !
)
Abbiamo una Bspline di terzo grado.
( E’ in pratica una curva … unidimensionale, con le X come parametro e le Y come valore )
Sotto alla curva vera e propria, la definizione disegna le varie basi che costituiscono la Bspline.
( BSpline = Basis Spline, cioe’ una spline costruita da funzioni di base moltilpicate per i valori dei vari CV )
Per disegnare le basi, la definizione disegna semplicemente una curva con tutti i CV settati a zero, salvo quello corrispondente alla base.
( Oltre alla base pura e semplice, disegniamo anche quella moltiplicata per il valore del CV,
cioe’ quella che serve a costruire la nostra curva.
Su queste basi ‘scalate’ possiamo disegnare un segmentino che rappresenta il valore della curva ad un certo parametro. )
Ah, ci sono anche dei punti che servono a separare visivamente i vari span della curva.
Possiamo settare il numero di CV da 4 a 10.
Possiamo settare i valori (Y) dei vari CV
Possiamo infine dare un valore al parametro (normailzzato tra 0 e 1) per fargli disegnare i segmentini.
Lo scopo dei segmentini e’ verificare in pratica che la curva corrisponda veramente alla somma delle basi scalate con i CV.
Se (dopo un bake) misuriamo la lunghezza del segmentino sulla curva, vediamo che corrisponde alla somma delle lunghezze dei segmentini delle basi scalate.
Con 4 CV abbiamo una Bezier, se aumentiamo il numero, diventa una Bspline … generica. 
bspline.gh (10,0 KB)

… Sempre ammesso di non aver fatto castronerie …
Scusate la definizione … spartana, a dir poco.
L’altezza delle basi (in Y) e’ arbitraria (scala = 10), idem lo spaziamento tra le curve-basi (15) … sorry.
La scala in X si puo’ variare da slider.
Ciao
… Spero (sono ottimista) che si capisca qualcosa … 