4.4.4 Oggetti
Torniti (Lathe)
Nel mondo reale, il termine 'tornire'
si riferisce al processo di costruzione di oggetti di sezione rotonda,
ottenuti ruotando il materiale grezzo intorno ad un asse e modellandolo,
togliendone pezzi mentre gira. I risultati possono essere manufatti eleganti
e uniformemente arrotondati, come parti di mobili, o vasellame. In POV-Ray
il tornio (lathe) può essere usato per creare un genere molto simile
di oggetti, per quanto il termine in questo caso si riferisca più
all'oggetto finale che non al metodo di lavorazione.
Ecco un oggetto 'lathe' molto semplice (file lathdem1.pov).
#include "colors.inc"
camera {
angle 10
location <1, 9, -50>
look_at <0, 2, 0>
}
light_source {
<20, 20, -20> color White
}
lathe {
linear_spline
6,
<0,0>, <1,1>, <3,2>, <2,3>, <2,4>, <0,4>
pigment { Blue }
finish {
ambient .3
phong .75
}
}
Renderizziamo questo esempio e otteniamo
un oggetto molto semplice.
![]() |
Fig. 22-Lathe
Vediamo come abbiamo prodotto quest'effetto
analizzando il codice.
Per prima cosa, vengono dichiarati sei punti, che il programma unisce con
delle linee. Notiamo che i vettori che descrivono i punti sono a due coordinate :
le linee che li congiungono si trovano sul piano x-y e quindi tutte le
componenti z sono nulle. L'uso di vettori a due dimensioni è obbligatorio
(l'uso di un vettore a tre dimensioni provocherebbe un messaggio di errore...con
un eccezione, che vedremo più avanti nella sezione sulle splines,
§ 4.4.4.1).
Una volta che sono state determinate le linee, il programma le fa ruotare
attorno all'asse delle y, possiamo immaginare che la linea che congiunge
i nostri punti ruotando lasci una scia e che la superficie definita dalla
scia sia la superficie del nostro oggetto. I punti specificati sono uniti
da una linea spezzata perché abbiamo usato la parola linear_splineCi
sono altri tipi di splines disponibili, che risulteranno in curve più
regolari e zone di transizione tra un punto ed un altro meno nette, ma
ci torneremo sopra tra un momento.
Prima, vorremmo distrarci un attimo e parlare delle differenze tra gli
oggetti 'lathe' e le superfici di rotazione (SOR). Le superfici di rotazione,
descritte in un altro tutorial (§4.4.9), possono
sembrare estremamente simili agli oggetti lathe, ad un primo approccio.
Anche nei SOR viene dichiarata una serie di punti che sono poi connessi
con linee curve e ruotati attorno all'asse delle y. Gli oggetti 'lathe'
hanno alcuni vantaggi come diversi tipi di spline : lineari, quadrate,
cubiche ed un altro aspetto ancora. La matematica (più semplice)
utilizzata dagli oggetti SOR non permette che la curva si ripieghi su sé
stessa sulle stesse coordinate y, così che , se si usa una SOR,
un qualunque 'ricciolo' improvviso che riporta la curva ad una quota già
percorsa, causerà un messaggio di errore. Per esempio, diciamo di
volere un oggetto 'lathe' inarcarsi da <0,0> a <2,2> per poi
tornare giù a <4,0>. Ruotato attorno all'asse y questo produrrebbe
qualcosa simile a un budino, un mezzo toro con un buco al centro. Usando
la sintassi dei SOR, non appena la curva si ripiega a percorrere quote
già 'usate' otteniamo un messaggio di errore. Nonostante questo,
gli oggetti SOR hanno ancora un vantaggio : a causa della matematica
più semplice che usano, tendono ad essere renderizzati più
velocemente di un oggetto 'lathe' equivalente. Per concludere, possiamo
usare un SOR, se le sue limitazioni ce lo permettono, ma se abbiamo bisogno
di un oggetto più versatile, allora usiamo un 'lathe'.
4.4.4.1 Capire il Concetto di Spline
![]() |
![]() |
![]() |