Cilindri, sfere ellissoidi
cilindri
La funzione
[X,Y,Z] = cylinder(r,n)
- Per traslare una figura sul piano xy è sufficiente sommare un offset ai valori di X e Y.
- La coordinata z generata va sempre da 0 a 1, per spostare la figura lungo l'asse z è sufficiente sommare a Z un offset.
- Poichè la curva di profilo è arbitraria, è possibile disegnare anche figure geometriche diverse.
Esempi:
>> r = 5;
>> numeroRaggi = 20;
>> t = 0:pi/10:2*pi;
>> r = 5;
Se si vuole ruotare la forma è possibile usare la funzione rotate sull'oggetto grafico generato da surf.
rotate(h, direzione, angolo)
ruota l'oggetto grafico h di un angolo spefificato; direzione è un vettore a due o tre elementi che descrive l'asse di rotazione insieme all'origine dell'asse di rotazione. L'origine predefinita dell'asse di rotazione è il centro del plot box (). Questo punto non è necessariamente l'origine degli assi.
L'alfa positivo è definito come l'angolo della regola della mano destra attorno al vettore di direzione mentre si estende dall'origine della rotazione.
>> r = 1;
Sfere
La funzione
[X,Y,Z] = sphere(n)
restituisce le coordinate x, y e z di una sfera di raggio unitario formata da nxn facce.
Esempi:
>> n = 30;
>> n = 10;
Per traslare la sfera si modificano le matrici X Y Z introducendo delle traslazioni, mentre per variare il raggio della sfera è sufficiente moltiplicare le matrici X Y Z per il raggio (attenzione: PRIMA dell'eventuale traslazione).
>> n = 30;
>> r = 5;
Ellisoidi
La funzione
[X,Y,Z] = ellipsoid(xc,yc,zc,xr,yr,zr,n)
restituisce le coordinate X, Y e Z di un ellissoide con centro in (xc,yc,zc), lunghezze dei semiassi (xr,yr,zr) e nxn facce.
Esempi:
>> [X,Y,Z] = ellipsoid(0, 0, 0, 1, 1, 2);
>> [X,Y,Z] = ellipsoid(1, 1, -1, 1, 1, 2);
>> [X,Y,Z] = ellipsoid(0, 0, 0, 1, 1, 2);