Nastro di Moebius

Le superfici ordinarie, intese come le superfici che nella vita quotidiana siamo abituati ad osservare, hanno sempre due "lati" (o meglio, facce), per cui è sempre possibile percorrere idealmente uno dei due lati senza mai raggiungere il secondo, salvo attraversando una possibile linea di demarcazione costituita da uno spigolo (chiamata "bordo"): si pensi ad esempio alla sfera, al toro, o al cilindro. Per queste superfici è possibile stabilire convenzionalmente un lato "superiore" o "inferiore", oppure "interno" o "esterno".

Nel caso del nastro di Moebius, invece, tale principio viene a mancare: esiste un solo lato e un solo bordo. Dopo aver percorso un giro, ci si trova dalla parte opposta. Solo dopo averne percorsi due ci ritroviamo sul lato iniziale. Quindi per esempio una sfera che rotola su di un lato potrebbe passare da una superficie a quella "dietro", senza attraversare il nastro e senza saltare il bordo, semplicemente continuando il suo moto.

L'incisore e litografo olandese Maurits Cornelis Escher, nel 1961, usa il nastro di Moebius per una sua incisione su legno, Striscia di Moebius I. Di due anni più tardi è il suo Striscia di Moebius II nel 1963 (immagine a destra). Nell'opera, una teoria di formiche cammina indefinitamente sul nastro percorrendone tutta la superficie.


Geometria utilizzata

Una possibile rappresentazione del nastro di Moebius è la superficie in R3 avente le seguenti equazioni parametriche (in coordinate cartesiane):

equations

Abbiamo costruito un'approsimazione della superficie del nastro di Moebius sfruttando l'equazione parametrica. Facendo variare il parametro v nell'intervallo [0, 2π) e il parametro u nell'intervallo [-x,x] (con x>0 definibile dall'utente) abbiamo così ottenuto una serie di punti. Il parametro v viene tenuto fisso nel suddetto intervallo per poter "chiudere" il nastro, mentre il parametro u rappresenta la larghezza del nastro (che sarà pari a 2x). Abbiamo infine creato la superficie unendo i punti calcolati precedentemente tramite dei poligoni. Il nastro di Moebius che abbiamo cosi costruito sarà centrato in (0,0,0) e con la circonferenza centrale di raggio a giacente sul piano xy.

Per il calcolo delle normali alla superficie nei punti che ci siamo precedentemente calcolati, possiamo utilizzare il Gradiente. Infatti dato che abbiamo la superficie del nastro di Moebius espressa sottoforma di insieme di punti (x,y,z) che soddisfano una funzione del tipo F(x,y,z)=0 (corrispondente alla equazione in forma cartesiana), una normale alla superficie nel punto (x,y,z) è data da:

in quanto il gradiente è in ogni punto perpendicolare al level set e F(x,y,z)=0 (ovvero la superficie di Moebius) è un level set di F.

Per capire meglio questo concetto, immaginiamo di avere due escursionisti che si trovano nella stessa posizione su di una montagna. Uno di questi è coraggioso e decide di muoversi scegliendo la direzione in cui la pendenza è più ripida. L'altro, più cauto, non volendo nè salire nè scendere sceglie un percorso che lo mantiene sempre alla stessa altitudine.

In quest'immagine le linee blu rappresentano i level sets, mentre le curve rosse seguono la direzione del gradiente. Riconducendoci al nostro esempio dove l'escursionista coraggioso cammina seguendo le linee rosse, mentre quello cauto segue quelle blu. Come possiamo notare i due escursionisti partono in direzioni perpendicolari tra loro.


Realizzazione della superficie tramite poligoni

Per unire i punti al fine di formare una superficie abbiamo deciso di usare una serie di triangoli (triangle strip) in quanto sono il metodo più efficiente a livello macchina di rappresentare un'oggetto poligonale.

Il primo triangolo viene definito grazie ai primi tre vertici, successivamente ogni nuovo triangolo viene realizzato con l'aggiunta di un solo nuovo vertice, perchè verranno considerati i due vertici direttamente precedenti. Riducendo quidi i dati necessari per la creazione delle forme geometriche che altrimenti avremmo dovuto considererare anche due nuovi punti. Il numero di vertici da salvare in memoria è quindi ridotto da 3N a 2+N dove N è il numero di triangoli da disegnare. E' evidente quindi che questo permette una maggiore efficenza rendendo più veloci i processi di caricamento all'interno della RAM. Se ancora non è chiaro portiamo un esempio.

I quattro triangoli qui sopra disegnati (evidenziati dal numero rosso), se fosserò calcolati normalmente verrebberò costruiti cosi: ABC, CBD, CDE e EDF. Se invece li consideriamo tramite le triangle strip, è possibile definirli con la successione di vertici ABCDEF, che in seguito viene decodificata come i triangoli ABC, BCD, CDE, DEF.