Vai alla Home Page About me Courseware Federica Living Library Federica Virtual Campus 3D Le Miniguide all'orientamento Gli eBook di Federica
 
I corsi di Ingegneria
 
Il Corso Le lezioni del Corso La Cattedra
 
Materiali di approfondimento Risorse Web Il Podcast di questa lezione

Massimo Martorelli » 8.Curve B-Spline


Argomenti della lezione

  • Curve B-Spline
  • Funzioni di miscelamento
  • Vettore dei nodi

Curve B-Spline

Curve B-Spline
(curve di approssimazione con possibilità di interpolazione)

Principio fondamentale

Le curve B-Spline utilizzano delle funzioni di miscelamento che hanno influenza locale e dipendono solo da alcuni punti di controllo circostanti.

Espressione delle Curve B-Spline

La formulazione matematica di una curva B-Spline di ordine k è la seguente:
p(u)=\sum_{i=0}^{n}p_{i}N_{i,k}(u)

dove:

pi = n + 1 punti di controllo
k = ordine della curva : 2 ≤ k ≤ n+1
Ni,k(u) = Funzione di miscelamento. Polinomio di grado k – 1.

Funzioni di miscelamento

Definizione ricorsiva:

N_{i,1}(u)=\begin{cases}\begin{array}{c}1 \ se \ U_{i}\leq u\leq U_{i+1}\\ 0 \ per \ gli \ altri \ valori \ di \ u\end{array}\end{cases}

Funzioni di miscelamento

N_{i,k}(u)=\frac{(u-U_{i})}{(U_{i+k-1}-U_{i})}N_{i,k-1}(u)+\frac{(U_{i+k}-u)}{(U_{i+k}-U_{i+1})}N_{i+1,k-1}(u)
dove:
U = [U0, U1, ..., Um] Vettore dei nodi

Funzioni di miscelamento

Funzioni di miscelamento


Vettore dei nodi

Vettore dei nodi

U = [U0, U1, ..., Um] = [U0, U1, ..., Un+k]

(m+1) = (n+1+k) ovvero m = n+k

In genere:

U_{i}-U_{i-1}=\begin{cases}\begin{array}{c}1\\0\end{array}\end{cases}

Esempi di vettore dei nodi:
U=[0,1,2,3,4] UNIFORME – PERIODICO
U=[0,1,2,2,3,4] UNIFORME – NON PERIODICO

Vettore dei nodi

Esempio di curve B-Spline (k=3) con stesso poligono di controllo ma differente vettore dei nodi.

Esempio di curve B-Spline (k=3) con stesso poligono di controllo ma differente vettore dei nodi.


Controllo locale

Ogni punto di controllo influenza solo k segmenti di curva e, viceversa, ogni segmento di una curva B-Spline è influenzato da k punti di controllo.


Curve B-Spline razionali

p(u)=\frac{\sum_{i=0}^{n}h_{i}p_{i}N_{i,k}(u)}{\sum_{i=0}^{n}h_{i}N_{i,k}(u)}


Vantaggi delle curve B-Spline

Le curve B-Spline superano i limiti delle curve di Bézier:

  • La modifica di un punto di controllo non si ripercuote su tutta la curva ma solo su una sua parte
  • Il numero dei punti di controllo non è legato al grado dei polinomi utilizzati

Le curve B-Spline sono diventate nella loro forma più evoluta (curve NURBS Non Uniform Rational B-Spline) uno standard nei programmi di modellazione geometrica.

  • Contenuti protetti da Creative Commons
  • Feed RSS
  • Condividi su FriendFeed
  • Condividi su Facebook
  • Segnala su Twitter
  • Condividi su LinkedIn
Progetto "Campus Virtuale" dell'Università degli Studi di Napoli Federico II, realizzato con il cofinanziamento dell'Unione europea. Asse V - Società dell'informazione - Obiettivo Operativo 5.1 e-Government ed e-Inclusion