D.A.A.DO.

Database delle Attività Aggiuntive dei DOcenti


parole e arte



Le attività svolte vengono descritte brevemente dagli utenti che le registrano su DAADO.
L' immagine che segue mostra dei rettangoli colorati, generati in modo automatico da un algoritmo.

L'algoritmo raccoglie tutte le 1673 parole salvate dagli utenti nel database, rimuove tutti i caratteri non alfabetici (numeri, caratteri speciali), esegue una cifratura ed assegna a ciascuna tre variabili esadecimali per i colori primari RGB.
Questi tre parametri vengono quindi miscelati per ricavare un unico colore col quale riempire un rettangolo per ciascuna parola.

Le dimensioni e la posizione di ciascun rettangolo vengono assegnate in modo casuale (vedi un'immagine diversa ogni volta che ricarichi la pagina).


Se ti interessa conoscere il codice che ho scritto per creare l'immagine, eccolo qui:
$canvas = imagecreatetruecolor(550, 550);
$white = imagecolorallocate($canvas, 255, 255, 255);
imagefill($canvas, 0, 0, $white);
$spell = "SELECT * FROM table";
$qspell = mysql_query($spell) or die ("Error Query [".$spell."]");
while($risu = mysql_fetch_array($qspell)){
$desc = strtolower($risu["descrizione"]);
$desc = preg_replace('/\PL/u', ' ', $desc);
$desc = preg_replace('/\s+/',' ',$desc);
$parole = explode(" ",$desc);
foreach ($parole as $parola) {
$colore = substr(sha1($parola), 0, 6);
$co = str_split($colore, 2);
$co[0] = substr($colore, 0, 2);
$co[0] = (hexdec($co[0])+1);
$co[1] = substr($colore, 2, 2);
$co[1] = (hexdec($co[1])+1);
$co[2] = substr($colore, 4);
$co[2] = (hexdec($co[2])+1);
$col = imagecolorallocate($canvas, $co[0], $co[1], $co[2]);
$x1 = rand(1, 550);
$y1 = rand(1, 550);
$x2 = rand(1, 550);
$y2 = rand(1, 550);
imagefilledrectangle($canvas, $x1, $y1, $x2, $y2, $col);
}
}
header("Cache-Control: no-cache, must-revalidate");
header('Content-type: image/png');
imagepng($canvas);
imagedestroy($canvas);