7.5.4.3 Quadrica
le superficie quadriche possono creare
oggetti come ellissoidi, sfere, coni, cilindri, paraboloidi (per esempio
specchi parabolici) e iperboloidi (forme a sella o clessidre). Non confondete
le quartiche con quadriche. Una quadrica è una polinomiale
di secondo grado mentre una quartica è di quarto grado. Le quadriche
assicurano una maggiore velocità di rendering e incorrono in meno
errori.
Una quadrica è definita così :
quadric { <A,B,C>, <D,E,F>,
<G,H,I>, J }
dove le lettere da A a J rappresentano i valori che definiscono i punti
x, y, e z che formano la superficie. Questi punti rispondono all'equazione
A x^2 + B y^2 + C z^2 +
D xy + E xz + F yz +
G x + H y + I z + J = 0
Valori diversi di A, B, C... daranno
oggetti diversi. Se prendi un qualunque punto x, y e z e usi le sue coordinate
in questa equazione, il risultato sarà uguale a zero se il punto
appartiene alla superficie dell'oggetto, negativo se si trova dentro all'oggetto
e positivi se si trova fuori. Ecco alcuni esempi :
X^2 + Y^2 + Z^2 - 1 = 0 Sfera
X^2 + Y^2 - 1 = 0 Cilindro infinito lungo l'asse z
X^2 + Y^2 - Z^2 = 0 cono infinito lungo l'asse z
Il modo più semplice di usare
questi oggetti è quello di includere il file shapes.inc nella
tua scena. Questo file contiene alcune quadriche predefinite, che è
possibile posizionare, ruotare, ridimensionare all'interno della scena.
È possibile richiamarle usando la seguente sintassi :
object { Nome_della_Quadrica }
Queste quadriche predefinite sono centrate nell'origine ed hanno raggio
unitario. Non confondete il raggio con la larghezza dell'oggetto. Il raggio
è la metà del diametro (o larghezza), quindi le normali quadriche
sono ampie due unità.
Alcune delle quadriche predefinite sono :
Ellipsoid
Cylinder_X, Cylinder_Y, Cylinder_Z
QCone_X, QCone_Y, QCone_Z
Paraboloid_X, Paraboloid_Y, Paraboloid_Z
Per una lista completa vedere il file
shapes.inc.