Loading
Note di Apprendimento
Study Reminders
Support
Text Version

Rappresentazione Spline

Set your study reminders

We will email you at these times to remind you to study.
  • Monday

    -

    7am

    +

    Tuesday

    -

    7am

    +

    Wednesday

    -

    7am

    +

    Thursday

    -

    7am

    +

    Friday

    -

    7am

    +

    Saturday

    -

    7am

    +

    Sunday

    -

    7am

    +

Ciao e benvenuto alla lezione numero 8 del corso Computer Graphics.
Oggi discuteremo in dettaglio di questi due tipi di spline. Insieme a quello, parleremo di come queste spline possano essere usate per rappresentare curve e superfici in computer grafica. Iniziamo con l'idea di linee di interpolazione.
Se ricordate, le spole interpolanti sono quelle in cui definiamo una serie di punti di controllo e la curva di Spline passa attraverso quei punti. E citiamo anche 3 spore interpolanti popolari. Ovvero la spline cubica naturale, le spole cubiche di Hermite e le spole cubiche del Cardinale, tutte le 3 sono delle spole interpolanti, il che significa che sono definite da punti di controllo che passa attraverso le curve di Spline. Quindi, ora, passiamo ad una discussione dettagliata su ognuno di questi tipi popolari. Inizieremo con la spline cubica naturale.
Solo un po' di storia. Quindi questa è una delle prime spline. Che è stato utilizzato nelle applicazioni di computer grafica. E come suggerisce il nome, dal momento che è una spline cubica così è costituita da pezzi di polinomia di terzo grado.
Ora, ogni pezzo, ognuno dei pezzi polinomiali è definito da 4 punti di controllo, possiamo denotarli come p0, p1, p2, p3. Riscoprendo che quando si parla di interpolazione polinomiale, quello che abbiamo citato in precedenza è che se stiamo usando un polinomio di grado n, allora avremo n plus 1 punti di controllo. Quindi, similmente qui dal momento della laurea sono tre, quindi abbiamo 4 punti di controllo.
Ora in caso di cubetti cubi naturali due dei punti di controllo p0 e p3 denotano due punti di confine che significa il valore limite del parametro u così p0 si riferisce al punto quando u = 0 e p3 si riferisce al punto in cui u = 1. Ora, gli altri due punti di controllo stanno essenzialmente denotando il primo e il secondo derivato al punto di partenza pari a 0. Quindi, due punti di controllo sono essenzialmente punti sulle curve p0 e p3, che rappresenta i due punti limite e gli altri due punti non sono punti sulle curve, piuttosto il primo e il secondo ordine derivati rispetto al parametro u a u pari a 0.
Ora cerchiamo di rappresentare questa spline usando una delle tecniche di rappresentazione. Quindi, riraccogliere quella spline può essere rappresentata in uno dei due modi, ovvero una rappresentazione di matrice base e una rappresentazione di funzioni di miscelazione. Abbiamo anche accennato che sono equivalenti. Quindi, qualsiasi rappresentazione è abbastanza buona. Ora, nel contesto delle rappresentazioni interpolanti, cercheremo di rappresentarli utilizzando il modulo di matrice base.
Quindi, in caso di spline cubiche naturali, dal momento che stiamo usando polinomio cubico così le equazioni generali polinomiali dovrebbero guardare una cosa del genere. Dove a0, a1, a2 e a3 sono coefficienti, u è il parametro. Ora sappiamo già che p0 o il punto di controllo p0 e il punto di controllo p1 punto di controllo p2, dovrebbe essere p2 e il punto di controllo p3 ha un significato specifico, quindi p0 e p3 rappresentano il punto ai confini. Quindi, allora possiamo impostare le equazioni, una cosa del genere, p0 è il valore di funzione a u pari a 0 che possiamo ottenere sostituendo u con 0.
Così, otterremo a0, 0.a1, 0 quadrato a2, 0 cubo a3 solo sostituire 0, sostituire u con 0. Analogamente per p3 abbiamo il valore della funzione a u pari a 1. Così, in questo caso sostituiamo u con 1 e otteniamo una cosa del genere. Queste due sono equazioni corrispondenti ai punti di controllo, p0 e p3, p1 e p2, come abbiamo detto rappresentano il primo ordine e il secondo ordine derivato a u pari a 0. Quindi, p1 è il derivato del primo ordine, p2 è il secondo ordine derivato rispetto a u.
Ora se calcoliamo i derivati e poi sostituiamo u con valore di 0 in caso di p1, quello che otterremo otterrà l'equazione, una cosa del genere. Si può provare da solo per ottenere il derivato e poi sostituire i valori u con 0. Ora calcoliamo di nuovo la derivata per ottenere il derivato del secondo ordine a u pari a 0 corrispondente a p2 e poi sostituire u con 0 di nuovo. E otteniamo l'equazione una cosa del genere.
Quindi, queste 4 equazioni rappresentano il sistema di equazioni che possiamo ottenere utilizzando le caratteristiche del punto di controllo. E da queste equazioni, da queste serie di equazioni, possiamo ricavare la matrice base. Come possiamo fare, possiamo prima costruire la matrice di vincolo prendendo semplicemente questi valori attaccati ai coefficienti e poi ci prendiamo l'inverso di quello per ottenere la matrice base.
Quindi, qual è la matrice di vincolo? Ripercoriamo l'equazione qui. Così, da lì quello che otteniamo, come possiamo vedere, 1, 0, 0, 0, questa è la prima fila. 0 1 0 0. Questa è la seconda fila, 0 0, 2 e 0 questa è la terza fila e infine 1, 1, 1, 1. Questa è la quarta fila. Quindi, solo utilizzando questi valori, otteniamo la matrice costante C. Ora, per ottenere la matrice base ciò che dobbiamo fare, dobbiamo prendere l'inverso di C, come calcolare l'inverso che non discuteremo qui, ovviamente, perché questa è una conoscenza molto basilare. E si può fare riferimento a qualsiasi libro sulla matrice di base. Inoltre, potete fare riferimento all'appendice del materiale di riferimento che verrà menzionato al termine di questa lezione per imparare a ottenere l'inverso di una matrice, assumendo che lo sappiamo già. Quindi, se questa è la nostra matrice di vincolo C e se prendiamo l'inverso, la matrice che otterremo è questa. E questa è la matrice base per la spline cubica naturale.
Quindi, raccogliamo la serie di passi che abbiamo seguito per ottenere la matrice base prima abbiamo definito i punti di controllo poi usando quei punti di controllo. Abbiamo attivato il sistema delle equazioni e dalle equazioni abbiamo formulato la matrice di vincolo C. Poi abbiamo preso l'inverso di C per ottenere la matrice base, dato che la matrice base è la matrice caratteristica per i polinomi cubi e quella naturale spline cubica, sono costituiti da polinomi cubi.
Quindi, possiamo dire che questa matrice di base, che è caratteristiche del polinomio cubico è abbastanza buona per rappresentare la naturale spline cubica. Così, seguiremo quella linea di argomenti come discusso nella lezione precedente.
Quindi, se usiamo semplicemente la matrice, allora possiamo dire che questa è la spline cubica naturale invece di specificare le equazioni o qualsiasi cosa. Ora, un'altra proprietà importante qui che queste spline cubiche hanno è che supportano le condizioni di continuità fino alla continuità C2, continuità parametrica fino a C2 che significa supportare continuità C0, continuità C1 e C2 continuano.
Ma il problema è che le spline cubiche non hanno una controllabilità locale. Questo significa che se abbiamo una spline e vogliamo cambiare leggermente la sua forma modificandone alcuni punti in curva, allora dobbiamo ri - calcolare l'intera curva piuttosto che il ri - computing, solo l'area localizzata.
Quindi, questo è essenzialmente un approccio molto inefficiente. Per esempio, supponiamo di avere una curva come questa e voglio cambiare questa parte a una cosa del genere, ma poi invece di limitarci a limitare il nostro calcolo all'interno di questa parte, dobbiamo di nuovo calcolare di nuovo tutta la curva. Quindi, non supporta la controllabilità locale. Ora, veniamo al secondo tipo di linee di interpolazione che sono le sprighe cubiche di Hermite come la cubica naturale, le spline cubiche di Hermite sono rappresentate anche da 4 punti di controllo.
Tuttavia, ha una proprietà importante che supporta la controllabilità locale. Quindi, il problema principale con le spline cubiche naturali è alleviato con le spline cubiche di Hermite. Così, i 4 punti di controllo che definisce le spline cubiche di Hermite possono essere denotati da p0, p1, p2 e p3.
Ora dove p0 e p2 sono i valori ai limiti dei parametri che significa u pari a 0 e u pari a 1, p1 è il primo derivato a u pari a 0 e p2 è il primo derivato ad u = 1. Allora, prima avevamo p0 e p3 per essere i punti al limite p1 e p2 sono il primo e il secondo derivato allo stesso punto che è u pari a 0.
Ora quello che abbiamo è p0 e p2 qui usando per rappresentare i punti ai confini dei parametri, cioè u pari a 0 e u pari a 1. P1 è il primo derivato a u pari a 0 e P2 è il primo derivato ad u pari a 1. Quindi, a entrambi i punti limite abbiamo un primo derivato denotato dai punti di controllo P1 e P2.
Seguendo l'approccio che abbiamo usato per ricavare la matrice base per le spline cubiche naturali, possiamo anche ricavare la matrice base per le sprighe cubiche di Hermite, non lo farà qui. E puoi provare te stesso. L'approccio è lo stesso. Così, si imposta un sistema di equazioni, identificare la matrice di vincolo prendere il suo inverso e ottenere la matrice di base. La Matrice sembra una cosa del genere, ovvero la rappresentazione per le sprighe cubiche di Hermite. Ora, sebbene le spline cubiche Hermiti supportino la controllabilità locale, ma non supportano tutte le condizioni di continuità parametrica, diversamente dalle cubiche naturali, supportano solo le condizioni di continuità C0 e C1 e non supportano la condizione C2. Ma i cubi naturali sostengono tutti questi filoni C0, C1, C2. Ciò implica che la curva che risulta dai polinomi cubici Hermiti siano meno lisce rispetto alla linea di base polinomiale naturale. Quindi, a scapito della smoothness. Stiamo ottenendo la proprietà di controllabilità locale, quindi stiamo ottenendo la controllabilità locale, ma stiamo perdendo in qualche misura, il grado di smoothness in curva.
Ora, un problema qui è che dobbiamo specificare i derivati del primo ordine. Come punti di controllo e entrambi i confini, chiaramente questo mette a carico l'utente. Per evitare di avere un'altra curva di spline che è il cardinale spline. Ora, con questa spline, possiamo risolvere il problema che abbiamo affrontato con le spline cubiche di Hermite che sta dovendo definire il derivato del primo ordine ed entrambi i punti limite.
Come prima ancora, ci occupiamo di spline cubiche, questa spline è composta anche da pezzi polinomiali e ogni pezzo è definito da 4 punti di controllo. Di nuovo, li stiamo denunciando usando p0 a p3. Stesse notazioni che utilizziamo ma qui p1 e p2 rappresentano i valori limite che significa a u pari a 0 e u pari a 1. P0 e p3 sono utilizzati per ottenere i derivati di primo ordine ai confini. Come, guarda questo sistema di equazioni qui. Questo è il punto di controllo p1 che è il valore della funzione a 0. Questo è il punto di controllo p2 che è il valore funzione a 1, u pari a 1.
Ora primo ordine derivato su u = 0 può essere ottenuto utilizzando queste equazioni. Analogamente il derivato del primo ordine a u = 1 può essere ottenuto utilizzando queste equazioni. Dove abbiamo usato quello per controllare punti in questa moda. E usato anche un parametro aggiuntivo t in entrambi i casi. Ora t è chiamato parametro di tensione. Quindi, essenzialmente determina la forma della curva quando t pari a 0 quello che otteniamo è la spline di catmull-rom o overhuset. Quindi, questo è un tipo speciale di spline quando t pari a 0. Quindi, usando il valore di t possiamo effettivamente controllare la forma della curva di spline complessiva. Quindi, qui non dobbiamo in realtà calcolare i derivati invece possiamo ricavarlo utilizzando i punti di controllo e il valore di t, in modo che in realtà renda più semplice la vita dell'utente.
Ma ancora, anche il cardinale Cubic ha sofferto dello stesso problema. Ovvero supporta fino a C0 e vedere una condizione di continuità parametrica. Non supporta C2. Quindi, ha una curva meno liscia rispetto alla Cubica naturale. Quindi, quel che resta è la formulazione di matrice base. Questo è leggermente complicato, ma di nuovo si può provare ad utilizzare lo stesso approccio impostando il sistema di equazioni dove possono essere richieste alcune risistemazioni. Poi si crea la matrice del vincolo, prendere l'inverso per ottenere la matrice base per la spline cubica cardinale. Che è rappresentata nella forma di S dove S è questa espressione.
Così, per riassumere, abbiamo appreso circa 3 spline interpolanti. Ognuna di queste spline interpolanti è costituita da pezzi polinomiali. E questi pezzi sono Cubic. Quindi, ogni pezzo è definito da 4 punti di controllo. In caso di cubico naturale, i punti di controllo sono definiti in modo particolare, in caso di cubi di Hermite è definito in modo diverso e in caso di cardinale Cubic, viene definito in tutt' altro modo. Quindi, il Cubico naturale è molto liscio, ma ha qualche problema.
Quei problemi sono particolarmente legati alla controllabilità locale, che si occupa di cura nell'Hermite Cubic, ma a scapito della fruibilità. Ma specificare l'Hermite Cubic's è leggermente difficile, che è di nuovo a cura di quella del cardinale Cubico. Ma la morbidezza rimane meno rispetto a quella di Cubico naturale. Ora, passiamo all'altra categoria di spline, ovvero le spline approssimative, quindi quali sono queste spline? Giusto per ricapitolarci qui, abbiamo una serie di punti di controllo, ma questa spline non ha bisogno di passare per tutti i punti. I punti di controllo vengono invece utilizzati per definire lo scafo del condannato, che determina la forma della curva complessiva di Spline.
Ora, ci sono due linee di approssimazione popolari utilizzate nella computer grafica. Una si chiama Cubic Bezier curve, e l'altra è B spline. Come nel caso di linee interpolanti, cerchiamo di capire questi tipi in un po' più dettagli. Inizieremo con le curve di Bezier cubiche. Ora, queste curve particolari, le curve di Cubic Bezier sono tra le tecniche di rappresentazione ampiamente utilizzate nella grafica. Il nome è stato ricavato dall'ingegnere francese Pierre Bezier, che lo ha utilizzato per la prima volta per progettare corpi Renault Car.
Trattandosi di curva cubica così definita da 4 punti di controllo come prima, ma qui la differenza è che la curva è una Spline approssimativa che significa che i pezzi polinomiali non passano attraverso tutti i 4 punti di controllo. Possiamo denotare questi punti come prima di p0, p1, p2 e p3. Quindi, ci sono 4 punti, ma non è necessario che la curva passi attraverso tutti i punti. Invece questi punti sono utilizzati per definire lo scafo convesso, quindi ogni pezzo origina a p0 e termina a p3, cioè il primo e l'ultimo punto di controllo. Gli altri due punti sono utilizzati per determinare lo scafo convesso all'interno del quale si trova la curva. Quindi, 2 punti sono in curva e altri 2 punti controllano la forma della curva.
Ora, i punti di controllo possono essere utilizzati per definire i derivati di primo ordine ai valori limite u pari a 0 e u uguale a uno che utilizza queste espressioni. Quindi, questo è il derivato del primo ordine a u pari a 0 e questo è il primo ordine derivato u pari a 1 E t hese due derivati sono definiti in termini di punti di controllo come mostrato in questi esempi.
Da questa serie di equazione possiamo riorganizzare e ottenere questo modulo qui mostrato per i punti di controllo. Ora, da quel modulo riorganizzato, possiamo ottenere la matrice di vincolo come mostrato qui. Questa è la matrice di vincolo. Poi prendiamo l'inverso della matrice di vincolo C-1 per ottenere la matrice base, rappresentazione delle curve di Bezier, che è una cosa del genere. Quindi, nota qui abbiamo seguito lo stesso approccio che prima abbiamo creato l'insieme delle equazioni usando le caratteristiche del punto di controllo, poi abbiamo formulato la matrice di vincolo e infine abbiamo preso l'inverso della matrice di vincolo per ottenere la matrice base.
In realtà c'è una rappresentazione della funzione di miscelazione anche per le curve di Bezier. Abbiamo già detto che sono equivalenti, ma anche la rappresentazione della funzione di miscelazione per le curve di Bezier è abbastanza popolata. Che come forma generale formano una cosa del genere, dove pk sono i punti di controllo e Bez le funzioni di miscelazione. E la funzione è definita all'interno di questa gamma è u tra 0 e 1. Ora, queste funzioni di miscelazione sono in realtà funzioni speciali, a volte sono note come Bernstein Polynomial che ha questa forma dove C è questa. Quindi, le curve di Bezier possiamo rappresentare usando funzioni di miscelazione dove le funzioni di miscelazione si chiamano Bernstein polinomi, che prende le forme qui in questa prima linea. Dove il termine C (n, k) viene mostrato in seconda riga.
Ora, se ampliamo le funzioni di miscelazione per dire un Bezier cubico dove n pari a 3, allora come sembra? BEZ 0, 3 è (1-u) 3, 1, 3 è questo uno 2, 3 è questo e 3, 3 è questo. Ecco, queste sono le funzioni di miscelazione per la curva di Bezier Cubic. Stessa cosa che possiamo ricavare dalla matrice base anche.
Come ho detto nella lezione precedente, che sono equivalenti. Uno può essere ricavato da un altro e si può provare a fare lo stesso.
Quindi, un grosso problema con la Bezier Cubic è che non supportano la controllabilità locale.
Questo è ovviamente una preoccupazione maggiore. Ora, passiamo all'altra categoria di spline che è B spline.
Ora qui l'idea è leggermente più complicata. Ora, le spline B sono linee approssimative, come abbiamo già accennato, supportano fino a condizioni di continuità C2, condizioni di continuità parametriche. Il che significa C0, C1 e C2 tutti e tre supportano. In altre parole, queste spole ci danno una curva molto liscia e sostengono la controllabilità locale. Quindi le curve di Bezier non hanno la controllabilità locale, mentre queste spole sono molto lisce. Sono molto lisci oltre che sostengono la controllabilità locale. Quindi, tutti i nostri problemi sono risolti con queste sprighe. Ora, cerchiamo di capire l'idea di base, la matematica dietro è leggermente complicata, quindi cercheremo di mantenerla al minimo per semplicità. Qual è l'idea? L'idea si basa sul rappresentare un polinomio in termini di altri polinomi, come abbiamo visto nella rappresentazione della funzione di miscelazione. Così, è lì che inizia questa idea, che un polinomio può essere rappresentato in termini di altro polinomio.
Quindi, qual è la forma più generale di tale rappresentazione, abbiamo incontrato questa espressione nella precedente lezione pi i punti di controllo e bi è la funzione di miscelazione. Quindi, ipotizziamo in questa rappresentazione che la funzione f sia una combinazione lineare delle funzioni di miscelazione dove i punti di controllo p servono come coefficienti. Ora, in questa definizione, una cosa da notare qui è che stiamo usando un parametro t invece di u. Ora questo parametro è più generale. Questo significa che non dobbiamo limitarci alla gamma definita per te che è compresa tra 0 e 1. Quindi, la t può assumere qualsiasi valore, non necessariamente all'interno dell'intervallo da 0 a 1.
Ora, ogni bi è polinomiale. Supponiamo che così poi f possa essere considerato come una spline composta da pezzi polinomiali, che è sostanzialmente l'idea ora possiamo rappresentare ogni bi come una combinazione di altre funzioni, come la funzione complessiva f. Così, f è rappresentato come una combinazione lineare di bi, ogni bi a turno può essere rappresentato come una combinazione di altre funzioni. Poi concettualmente, ogni bi è sprigionabile, perché è composto da altri polinomi.
Allora, quando abbiamo parlato di Spline, abbiamo detto che Spline è una curva che è costituita da polinomi di grado inferiore ora ciascuno di questi polinomi. Ancora, ipotizziamo di essere composti da anche altri polinomi. Quindi, questi pezzi polinomiali sono essi stessi spline piuttosto che semplici polinomi. E questa è l'idea complessiva di B spline. Cioè stiamo avendo una spline, che è fatta di spline di base piuttosto che di pezzi polinomiali.
Ora, ogni spline base è costituita da pezzi polinomiali. Quindi, la definizione è di un livello superiore alla definizione di base di Spline. In spline abbiamo una curva composta da pezzi polinomiali in questa spline. Abbiamo una curva fatta di spline base, che a sua volta è costituita da pezzi polinomiali.
Quindi, quello che otteniamo è una spline composta da B - spline e questa è l'idea complessiva. Quindi, quando si parla di linee B, ci riferiamo in realtà alle spore costitutive. Cerchiamo di capire in termini di esempio. Supponga di avere 4 punti di controllo e vogliamo adattare una curva attraverso quei punti. Così, da quando abbiamo 4 punti. Quindi, la nostra funzione curva sembrerà una cosa del genere, ampliamo il modulo generale su mostrato in precedenza per ottenere le 4 funzioni di miscelazione nella forma generale. Ora, ipotizziamo che stiamo utilizzando una linea B lineare che significa pezzi di B - spline costituiti da polinomi lineari.
Poi, ogni B - spline avrà due pezzi lineari come per la seguente equazione. Questo è il B - spline e questi sono i pezzi lineari definiti a portata di t. Così, come si può vedere nella formulazione precedente, che ogni B - spline è definita tra intervalli sub del parametro T ora all'interno di questo sottointervallo, i pezzi che hanno realizzato che sono i costituenti delle B - spline hanno la propria gamma. Quindi, abbiamo una gamma per la B - spline e abbiamo sub intervalli per i pezzi polinomiali costitutivi dello spline. Ora, quei punti nella gamma di parametri in cui il pezzo inizia o finisce sono chiamati knot points o semplicemente knot per l'ith B-spline, i nodi sono i + 1 e i + 2. Tanto per riscuotere, quindi abbiamo una spline composta da B - spline. Ora ogni B - spline è definita all'interno di una gamma che la gamma è suddivisa per ogni pezzo costitutivo di una B-spline. Ora, dove un pezzo inizia o finisce si chiamano nodi o semplicemente nodi. Per l'ith B-spline. Possiamo definire i nodi come i, i + 1 e i + 2. Per i 4 punti di controllo nel nostro esempio, apprende il valore da 1 a 4. Quindi, allora possiamo avere i nodi. Come 1, 2, 3, 4, 5, 6, questi sono i 6 punti, e questo insieme di punti è il vettore dei nodi, noto anche come il vettore knot. Che ovviamente è un ordine crescente di valori dei parametri.
Quindi, per riassumere ogni B - spline è costituita da k dove k pari a d + 1, d è il grado del polinomio. Ora il parametro t varia tra 1 a n + k avendo n + k knots. Nel nostro esempio n è 4, n è il numero di punti di controllo k è 2 da quando d è 1. Quindi, la gamma è compresa tra 1 e 6 con 6 nodi.
L'ith B - spline è definito all'interno dei nodi i e i + k, ad esempio, la seconda B - spline che significa i= 2 è definita tra 2 e 2 + 2 o 4, perché k è 2. Quindi, tra 2 a 4, significa che i valori di nodo sono 2, 3 e 4.
Quindi, ogni B - spline ha k + 1 knot. Ora, nel nostro esempio, da k pari a 2. Dunque, ogni B - spline avrà 3 nodi per qualsiasi altro valore di k la spline B avrà k + 1 nodi. Ecco, queste sono le caratteristiche del B-spline. Un'altra caratteristica k è in realtà molto cruciale nel determinare tutte queste caratteristiche. Quindi, questo valore k viene spesso chiamato parametro B - spline. Allora, tenete presente che k è molto importante, gioca un ruolo molto cruciale nel determinare le caratteristiche B - spline che abbiamo enumerato in precedenza. Così, spesso k si chiama parametro B - spline. Ora, vediamo vari tipi di B-spline. Finora abbiamo dato un'idea di base, idea introduttiva di base di B - spline. Ora vediamo i tipi che ci sono per la spline B.
Ci sono 3 tipi, uniforme B - spline, non uniforme B - spline e nurbs o linea B razionale non uniforme presenteremo brevemente ognuno di questi tipi.
Quindi, quando abbiamo i nodi che sono uniformemente spaziati nel vettore del nodo, come nel caso dell'esempio che abbiamo visto prima, quelle B - spline sono chiamate linee B uniformi. Se i vettori non sono uniformemente distanziati, la spaziatura tra nodi consecutivi non è uguale. Poi otteniamo la spline B non uniforme. E infine, i nurbi hanno fatto riferimento alle linee B che in realtà fanno riferimento al rapporto di due quantità mostrate qui in questa espressione. Ogni tanto sono i pesi scalari e i bi - spline non uniformi e va anche notato che la stessa B - spline viene utilizzata sia in numeratore che in denominatore. Quindi, i nurbs si riferiscono essenzialmente a questo rapporto, quindi abbiamo una linea B uniforme dove i punti di nodo sono uniformemente spaziati, abbiamo una linea B non uniforme, dove i punti di nodo non sono uniformemente distanziati.
E abbiamo dei nuraghi dove si parla di rapporto di due quantità, ognuna delle quali è costituita da una stessa linea B non uniforme. Ora, l'idea di base delle spline è che usando questo dovremmo essere in grado di rappresentare alcune curve e renderla sullo schermo. Ora come possiamo visualizzare le curve di spline?
Così, dove abbiamo iniziato come si adatta a una curva ad una determinata serie di punti di controllo, quindi ci viene data una serie di punti di controllo e vogliamo adattare una curva, abbiamo discusso di come usare l'idea di spline per ottenere la curva. Ora cosa possiamo fare. Così, abbiamo preso la spline. Poi quello che possiamo fare il modo più semplice è quello di determinare o interpolare nuovi punti di controllo utilizzando l'equazione di spline e poi unire i punti di controllo utilizzando segmenti di linea. Possiamo anche utilizzare la rappresentazione della funzione di miscelazione per l'interpolazione di questi punti.
Come esempio, supponiamo di ricevere due punti di controllo p0 e p1 questo p0 e questo è p1 dato che da due punti di controllo ci possiamo utilizzare una spline interpolare lineare e una volta identifichiamo la rappresentazione spline utilizzando gli approcci citati già, possiamo valutare la funzione spline per creare 3 nuovi punti di controllo qui mostrati. E otterremo il valore del parametro per questi punti di controllo definiti qui, e poi otterremo il valore di funzione effettivo.
Così, ci vengono dati due punti di controllo, stiamo usando una spline interpolante lineare e usando quella spline, stiamo creando 3 nuovi punti di controllo e una volta creati questi punti. Possiamo unirci utilizzando un segmento di linea per ottenere la curva.
E possiamo continuare ad aggiungere sempre più punti per ottenere una curva finale. Infatti, se più punti di controllo ci sono possiamo usare più punti di controllo per ottenere spline migliori, linee di ordine superiori invece di linee lineari e fare lo stesso approccio, seguire lo stesso approccio. Quindi, tutto è possibile Ma il problema principale è che dobbiamo valutare di nuovo la funzione di miscelazione. Ora, quando vogliamo visualizzare le spline ad un ritmo molto elevato, questi calcoli possono essere costosi e possono rallentare il processo di rendering. Quindi, richiediamo qualche approccio alternativo. Uno di quegli approcci è noto come algoritmo De Casteljau. E avremo un rapido sguardo all'algoritmo.
Quindi, l'algoritmo è composto da pochi passi. Sono n punti di controllo indicati. Quello che facciamo, uniamo le coppie consecutive di punti di controllo con segmenti di linea e poi continuiamo fino ad ottenere un solo punto. Quello che facciamo, dividiamo per la prima volta ogni segmento di linea nel rapporto, d: 1-d per ottenere n-1 nuovi punti dove d è qualsiasi numero reale maggiore di 0. Ora unisciti a questi nuovi punti con i segmenti di linea e poi torniamo al passo 1.So, questo è un po' come funziona. Vediamo un esempio, supponiamo qui n uguale a 4 e abbiamo deciso di essere un terzo. Quindi, p0, p1, p2, p3 sono i punti iniziali, poi a un terzo del p si dice p0 e p1 abbiamo preso un punto.
Allo stesso modo, un terzo del p sono p1, p2 hai preso un altro punto e poi un altro punto? E poi questi p0 sono stati modificati per riferirsi a questo. Poi continuiamo nel loop per arrivare finalmente punto qui dopo l'esecuzione dell'algoritmo Così, questa divisione continua fino a ottenere un punto. E a quel punto ci fermiamo. Quindi, questo è il punto di uscita. Questo, insomma come possiamo utilizzare una procedura iterativa ad una procedura più semplice per ottenere punti sulla curva utilizzando l'algoritmo. Quindi, quello che stiamo facendo in ogni run, stiamo ottenendo un nuovo punto e possiamo eseguirlo ogni volta che vogliamo ottenere m nuovi punti, quando questi punti sono uniti ai segmenti di linea, otteniamo le curve di Bezier. Quindi, qui va notato che otteniamo questa particolare curva, non tutti i tipi di Spline. Quindi, questo algoritmo in realtà si riferisce alla creazione di una curve di Bezier, che è una spline approssimativa. Possiamo eseguire l'algoritmo m volte per ottenere i punti m sulla curva di Bezier. Ecco, ecco come possiamo ottenere i punti e creare la curva.
Ora c'è un'altra cosa nella computer grafica, quindi non siamo necessariamente soddisfatti solo delle curve. Ciò di cui abbiamo bisogno sono superfici anche curvi. Quindi, usare idea spline come poter ottenere superfici curate è molto semplice. Guarda questa figura qui. Possiamo davvero creare una griglia di punti di controllo come mostrato in questa figura.
Così, ogni sottoinsieme della griglia può essere utilizzato per ottenere una curva in modi diversi e quando mettiamo insieme queste curve, otteniamo una superficie, quindi per ottenere la superficie, definiamo una griglia mostrata nel campo dei cerchi qui utilizzando un solo sottoinsieme, otteniamo una curva di spline. Usando un altro sottoinsieme, otteniamo un'altra curva di Spline che si interseca, e quando otteniamo questa griglia di curve, otteniamo la superficie, la superficie è definita da quella griglia. Quindi, questo è il modo semplice di ottenere una superficie.