Ejemplo n.º 1
0
    $puntos[8] = $ancho - 31;
    $puntos[9] = 221;
    // superior derecho
    $puntos[10] = $ancho - 31;
    $puntos[11] = 30;
    imagepolygon($image, $puntos, 6, $colores[0]);
    ImageString($image, 2, 31, 8, $ttl, $colores[5]);
    // Imprime el titulo
    for ($semestre = 0; $semestre < $nvars; $semestre++) {
        $porcentaje = $valores[$semestre] * 180 / max($valores);
        $puntos = array();
        // lado DERECHO DE LOS CUBOS (oscura)
        $puntos = CargaEsquinas($equis2 + 1, 49 + (180 - $porcentaje), $equis2 + 1, 229, $equis2 + 9, 220, $equis2 + 9, 41 + (180 - $porcentaje));
        imagefilledpolygon($image, $puntos, 4, $colores[$idcolor + 1]);
        // TOPE DE LOS CUBOS 3D (clara)
        $puntos = CargaEsquinas($equis1 + 9, 41 + (180 - $porcentaje), $equis1 + 1, 49 + (180 - $porcentaje), $equis2 + 1, 49 + (180 - $porcentaje), $equis2 + 9, 41 + (180 - $porcentaje));
        imagefilledpolygon($image, $puntos, 4, $colores[$idcolor + 2]);
        ImageFilledRectangle($image, $equis1 + 1, 50 + (180 - $porcentaje), $equis2, 229, $colores[$idcolor]);
        // crea rectangulo
        ImageString($image, 1, $equis1 + 2, 232, $semestre + 1, $colores[0]);
        ImageString($image, 1, $equis1 + 2, 51 + (180 - ($porcentaje > 10 ? $porcentaje : 10)), $valores[$semestre], $colores[0]);
        //ImageString($image,1,$equis1 + 5, 222,$valores[$semestre],$colores[0]);
        if ($idcolor < 32) {
            $idcolor += 3;
        } else {
            $idcolor = 5;
        }
        $equis1 += $ladoy;
        $equis2 += $ladoy;
    }
} else {
Ejemplo n.º 2
0
$porcentajetotal = $total * 200 / 100;
// contorno gris parte de atras
ImageRectangle($image, $equis1 + 15, 11 + (200 - $porcentajetotal), $equis2 + 15, 210, $colores[2]);
// verde superior, claro
$puntos = CargaEsquinas($equis1 + 15, 11 + (200 - $porcentajefil), $equis1 + 1, 25 + (200 - $porcentajefil), $equis2 + 1, 25 + (200 - $porcentajefil), $equis2 + 15, 11 + (200 - $porcentajefil));
imagefilledpolygon($image, $puntos, 4, $colores[13]);
// rellena lados del cubo siempre cuando el porcentaje no sea cero
if ($fil != 0) {
    // verde costado derecho, oscuro
    $puntos = CargaEsquinas($equis2, 26 + (200 - $porcentajefil), $equis2, 224, $equis2 + 15, 210, $equis2 + 15, 11 + (200 - $porcentajefil));
    imagefilledpolygon($image, $puntos, 4, $colores[12]);
    // verde frontal
    ImageFilledRectangle($image, $equis1, 26 + (200 - $porcentajefil), $equis2, 224, $colores[11]);
} else {
    // contorno gris de base
    $puntos = CargaEsquinas($equis1 + 15, 210, $equis1, 225, $equis2, 225, $equis2 + 15, 210);
    imagepolygon($image, $puntos, 4, $colores[2]);
}
// contorno gris frontal
ImageRectangle($image, $equis1, 26 + (200 - $porcentajetotal), $equis2, 225, $colores[2]);
// contorno gris del lado oscuro
$puntos = CargaEsquinas($equis2, 26 + (200 - $porcentajetotal), $equis2, 225, $equis2 + 15, 210, $equis2 + 15, 11 + (200 - $porcentajetotal));
imagepolygon($image, $puntos, 4, $colores[2]);
// contorno gris superior, el tope
$puntos = CargaEsquinas($equis1 + 15, 11 + (200 - $porcentajetotal), $equis1, 26 + (200 - $porcentajetotal), $equis2, 26 + (200 - $porcentajetotal), $equis2 + 15, 11 + (200 - $porcentajetotal));
imagepolygon($image, $puntos, 4, $colores[2]);
/*  render image */
ImagePNG($image);
//ImageJPEG($image);
/* cleanup memory */
ImageDestroy($image);