note 50567 added to function.imagefilledarc

From: Date: Thu, 03 Mar 2005 16:54:32 +0000
Subject: note 50567 added to function.imagefilledarc
Groups: php.notes 
Request: Send a blank email to php-notes+get-85869@lists.php.net to get a copy of this message
He añadido un par de cosillas al ejemplo de "hans at lintoo dot dk", sobre todo el grosor (thickness) del efecto 3D... <?php //Making a image 200 x 200 $im = imagecreate (200, 200); //Setting background color $background = imagecolorallocate($im, 226, 226, 226); //Setting colors of elements $randcolor[0] = imagecolorallocate($im, 255, 203, 3); $randcolor[1] = imagecolorallocate($im, 220, 101, 29); $randcolor[2] = imagecolorallocate($im, 189, 24, 51); $randcolor[3] = imagecolorallocate($im, 214, 0, 127); $randcolor[4] = imagecolorallocate($im, 98, 1, 96); $randcolor[5] = imagecolorallocate($im, 0, 62, 136); $randcolor[6] = imagecolorallocate($im, 0, 102, 179); $randcolor[7] = imagecolorallocate($im, 0, 145, 195); $randcolor[8] = imagecolorallocate($im, 0, 115, 106); $randcolor[9] = imagecolorallocate($im, 178, 210, 52); $randcolor[10] = imagecolorallocate($im, 137, 91, 74); $randcolor[11] = imagecolorallocate($im, 82, 56, 47); //Setting the darker alt color to the main color $darkcolor[0] = imagecolorallocate($im, 205, 153, 0); $darkcolor[1] = imagecolorallocate($im, 170, 51, 0); $drakcolor[2] = imagecolorallocate($im, 139, 0, 1); $darkcolor[3] = imagecolorallocate($im, 164, 0, 77); $darkcolor[4] = imagecolorallocate($im, 48, 0, 46); $darkcolor[5] = imagecolorallocate($im, 0, 12, 86); $darkcolor[6] = imagecolorallocate($im, 0, 52, 129); $darkcolor[7] = imagecolorallocate($im, 0, 95, 145); $darkcolor[8] = imagecolorallocate($im, 0, 65, 56); $darkcolor[9] = imagecolorallocate($im, 128, 160, 2); $darkcolor[10] = imagecolorallocate($im, 87, 41, 24); $darkcolor[11] = imagecolorallocate($im, 32, 6, 0); //Getting the data from GET /* $i = 0; while ($i <= 11) { $data[$i] = $_GET[++$i]; } */ $data = array( 100, 200, 50, 40); /* datos a mostrar ( menos de 12 valores ) */ $num_data = count ($data); //Getting ready $datasum = array_sum($data); $anglesum[0] = 0; $angle[0] = 0; $i = 0; //Se calcula el comienzo y final de la posición de los ángulos de los elementos while ($i < $num_data) { ++$i; $n = $i - 1; $part[$i] = $data[$n] / $datasum; $angle[$i] = floor($part[$i] * 360); $anglesum[$i] = array_sum($angle); } /* //DEBUGGING - only for testing purposes echo "<pre>"; print_r($part); print_r($anglesum); print_r($angle); */ // Variables posicion $cx = 120; $cy = 100; $ancho = 100; $largo = 2 * $ancho; // relación de aspecto $grosor = 25; // efecto 3D // make the 3D effect for ($g = $grosor; $g > 0; $g--) { $n = 0; while ($n < $num_data) { ++$n; $f = $n - 1; if ($angle[$n] != 0) imagefilledarc($im, $cx, $cy + $g, $largo, $ancho, $anglesum[$f], $anglesum[$n], $darkcolor[$f], IMG_ARC_PIE); } } //make the 2d data that sits above the 3deffect $i = 0; while ($i < $num_data) { ++$i; $n = $i - 1; if ($angle[$i] != 0) { imagefilledarc($im, $cx, $cy, $largo, $ancho, $anglesum[$n], $anglesum[$i], $randcolor[$n], IMG_ARC_PIE); } } // flush image header('Content-type: image/png'); imagepng($im); imagedestroy($im); ?> ---- Manual Page -- http://www.php.net/manual/en/function.imagefilledarc.php Edit -- http://master.php.net/manage/user-notes.php?action=edit+50567 Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+50567&report=yes&reason=added+to+the+manual Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+50567&report=yes&reason=bad+code Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+50567&report=yes&reason=spam Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+50567&report=yes&reason=useless Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+50567&report=yes Reject -- http://master.php.net/manage/user-notes.php?action=reject+50567&report=yes Search -- http://master.php.net/manage/user-notes.php

« previous php.notes (#85869) next »