4.4.7.1        Nuovi Trucchi per Vecchie Spline.



Se abbiamo seguito la sezione sulle spline nel tutorial sugli oggetti lathe (§ 4.4.4.1), sappiamo che ci sono altri due tipi di spline oltre a quella lineare : la spline quadratica e quella cubica. Chiaramente, possiamo usare queste spline per ottenere un tipo di prisma di sezione ricurva. C'è solo una piccola trappola e dovremmo leggere attentamente questo paragrafo per evitare di strapparci i capelli di fronte a misteriosi messaggi di errore "too few points in prism" (troppo pochi punti nel prisma), che impediscono al nostro prisma di essere renderizzato. Possiamo probabilmente intuire dove è il problema : come chiudere una spline non lineare ? A differenza della spline lineare, che semplicemente traccia una linea tra l'ultimo punto ed il primo se ci siamo dimenticati di farli coincidere, le spline quadratiche e cubiche sono un po' più problematiche. Prima di tutto, ricordiamo che le spline quadratiche determinano l'equazione della curva che congiunge due punti in relazione alle coordinate dei due punti ed a quelle del punto precedente. Quindi, il primo punto in una spline quadratica qualsiasi, è solo un punto di controllo e non farà in effetti parte della curva. Ciò significa che se vogliamo come in questo caso chiudere una spline quadratica, dobbiamo far coincidere il secondo punto con l'ultimo, dato che il primo non si trova sulla curva, poiché è un punto di controllo presente solo per necessità di calcolo.
Analogamente, le spline cubiche hanno bisogno che sia il primo che l'ultimo siano punti di controllo, per cui, se vogliamo chiudere un perimetro costruito con una spline cubica, dobbiamo fare coincidere il secondo punto con il penultimo. Se non facciamo coincidere i punti giusti su una spline quadratica o cubica, otteniamo il messaggio "too few points in prism" POV-Ray si aspetta che chiudiamo la curva e quando finisce i punti che gli abbiamo dato senza trovare la chiusura, dà un messaggio di errore ( e non termina il rendering).
Confuso ? Okay, che ne diresti di un esempio ? Sostituiamo il prisma nel nostro ultimo pezzetto di file con questo (file prismdem2.pov).

prism {
cubic_spline
// fai traslare i punti seguenti da qui...
// ... a qui
// il numero di punti che formano la sezione...

3, -5>, // punto#1 (punto di controllo...non sulla curva)
3, 5>, // punto#2 ... QUESTO PUNTO...
0>, // punto#3
3, -5>, // punto#4
3, 5>, // punto#5 ... DEVE COINCIDERE CON QUESTO
0> // punto#6 (punto di controllo...non sulla curva)
pigment { Green }
}

Fig. 31-Prisma Triangolare

Questo semplice prisma produce un oggetto che assomiglia ad un triangolo estruso con gli spigoli arrotondati. I punti 2, 3, 4 sono gli angoli del triangolo ed il punto 5 chiude il perimetro ritornando a coincidere con il punto 2. I punti 1 e 6 sono i nostri punti di controllo e non fanno parte del triangolo, ci sono per aiutare POV-Ray a calcolare quali curve usare per congiungere gli altri punti.