javadoc Automa.javaAttenzione,essa richiede una serie di immagini caricate in questa cartella!
Il comando PARAM si presenta nel modo seguente:
<PARAM name=nomedelparametro value=valoredelparametro >
Questi comandi vanno inseriti tra <applet e </applet.
I Comandi Param disponibili sono:
| nome | valore | valore di default |
| k | intero tra 1 e 10 che indica il numero di colori da usare | 2 |
| r | intero che indica le dimensioni del "vicinato" | 1 |
| regola | regola indicata da un numero | 0110 |
| pixelcentrale | =-1 indica che va generata una configurazione a caso
per la prima riga = valore tra 0 e k-1 provoca la colorazione del pixel centrale al valore indicato mentre gli altri sono posti uguali a 0. > = k provoca la colorazione a caso del pixel centrale mentre gli altri sono colorati col colore 0. | -1 |
| scroll | il valore true indica che la figura deve continuare a scorrere | true |
| interfaccia | il valore true indica che l'interfaccia(tasti e finestrelle) deve essere disegnata | true |
| attesa | tempo in millisecondi tra un'aggiornamento e l'altro dell'automa | 10 |
<applet code=Automa.class name="Automa" width=300 height=300> <param name="k" value="7"> <param name="r" value="1"> <param name="regola" value="1054556001140162354"> <param name="scroll" value="false"> <param name="interfaccia" value="false"> <applet>
| nome | Effetto |
| startrandom() | Disegna un nuovo automa scelto a caso |
| startautoma(2,1,"0110") | Disegna l'automa indicato dai 3 numeri |
| startautomar(2,1) | Disegna un automa a caso col numero di colori e dimensioni del vicinato indicato. |
| startautomac(2) | Disegna un automa a caso col numero di colori indicato. |
| setPixel(3) | Ridisegna l'automa ponendo il pixel centrale uguale al valore indicato e gli altri a 0. |
| setPixelRandom() | come il precedente ma con una scelta a caso del colore del pixel centrale |
| setpsize(10) | Ridisegna l'automa con i quadratini della dimensione indicata. |
| setScroll(true) | Se il valore passato e' true l'automa viene aggiornato in continuazione facendo scorrere l'immagine,altrimenti il disegno si ferma quando ha finito di riempire la finestra dell'applet. |
<form > <input type=button value="Random" onClick="prandom()" > <form>La funzione Javascript prandom() va definita tra <HEAD e </HEAD nel modo seguente:
function prandom() {
// Return if Java is disabled
if(!navigator.javaEnabled()) return
// Get applet
drawApplet = document.applets["Automa"]
drawApplet.startrandom();
}
Perche' questa funzione Javascript funzioni correttanente il comando APPLET
va scritto nel modo seguente:
<applet code=Automa.class name="Automa" MAYSCRIPT="MAYSCRIPT" width=300 height=300> <applet>La maniera piu' semplice per richiamare una funzione Javascript come la prandom() e' quello di inserire la chiamata nel comando <A che permette di ottenere scritte cliccabili, nella maniera seguente:
<a href="Javascript:prandom()">
Un altro modo di richiamare una funzione e' di farlo all'atto del caricamento
della pagina con:
<body onLoad="prandom()">
Potete usare un modulo html per definire i dati da inviare all'applet come viene fatto nella terza pagina col seguente codice:
<form name="dati" onSubmit="return startautoma()"> Numero di valori(k) <input type=text value="2" name=nvalori> Dimensione del vicinato(r) <input type=text value="1" name=nsiti> Regola(numero di l cifre tra 0 e k-1) <input type=text value="0110" name=regola> <input type=submit value="Mostra l'automa" > <form>che prevede una funzione startautoma() cosi' definita:
function startautoma() {
nv = document.dati.nvalori.value;
if(nv<1 || nv >10)alert("Numero di colori non valido:dai un numero tra 1 e 10!")
ns = document.dati.nsiti.value;
r = document.dati.regola.value;
// Return if Java is disabled
if(!navigator.javaEnabled()) return
// Get applet
drawApplet = document.applets["Automa"]
drawApplet.setpsize(1);
drawApplet.startautoma(Number(nv),Number(ns),r);
return false;
}
Alcune osservazioni su questo codice:
return startautoma() e non semplicemente startautoma() per disattivare il normale trattamento dei moduli da parte del browser.
startautoma contenga alla fine un return false
Number(datoricevutodalmodulo).
alarm(messaggio di errore).
alarm("variabile = "+variabile) per controllare valori delle variabili e la correttezza della funzione Javascript.