Trecce e riduzione dei manici

Applet realizzato da Ester Dalvit (01/02/2010). Non funziona?
Questo applet è una nuova versione di un applet di Jean Fromentin e illustra l’algoritmo di riduzione dei manici di Patrick Dehornoy.
---> codebase="." archive=" http://download.java.net/media/applet-launcher/applet-launcher.jar, http://download.java.net/media/jogl/builds/archive/jsr-231-webstart-current/jogl.jar, http://download.java.net/media/gluegen/webstart/gluegen-rt.jar, ../Braid.jar" alt="Applet Riduzione dei manici">

Istruzioni

Viene disegnata una treccia. Con il bottone sinistro del mouse, la puoi ruotare e con lo scroll puoi zoomare sull’immagine.
Cliccando sui bottoni sulla destra puoi aggiungere degli incroci in fondo alla treccia, tornare alla treccia di partenza o cancellarla per ottenere un solo filo.
Il bottone play/pause fa partire e fermare la visualizzazione dell’algoritmo di riduzione dei manici.

Cosa succede?

Una treccia è costituita da alcuni fili fissati alle estremità. Se si hanno due trecce, come si fa a capire se esse solo “uguali”, cioè intrecciate allo stesso modo? Si può provare a muovere i fili di una treccia cercando di ottenere la stessa configurazione dell’altra. Se ci si riesce, vuol dire che le due trecce sono “uguali”, ma in caso contrario non si può dire che siano diverse: infatti può darsi che abbiamo scelto i movimenti sbagliati, mentre con altri movimenti si riesca a trasformare una nell’altra.
Ecco una domanda a cui non è sempre facile rispondere: dire se una data treccia può essere trasformata nella treccia banale, in cui tutti i fili sono verticali e non si intrecciano. Ad esempio, guardando la treccia dell’applet, non è immediato accorgersi che essa è banale!
L’algoritmo di riduzione dei manici è un modo per rispondere a questa domanda: data una qualsiasi treccia, muovendo i fili secondo delle regole fissate, come mostra l’applet, la treccia è banale se e solo se, dopo aver premuto il pulsante play, il movimento si arresta quando tutti i fili sono verticali.
Per sapere cos’è un manico e capire come funziona l’algoritmo, clicca qui.

Download

Archivio zip con le sorgenti java. Per compilarlo è necessario aver installato java e JoGL.
Archivio jar dell’applet. Per lanciarlo come stand-alone è necessario aver installato le librerie JogL.