gestion des cercles et de leurs couleurs

This commit is contained in:
2018-11-10 10:01:06 +01:00
parent c039cf8da9
commit 09d51c6bba
9 changed files with 514 additions and 14 deletions

View File

@@ -120,4 +120,29 @@ class ColorGradient
}
}
function getGDcolorGradientArray($vImage, $nb_colors, $couleurRGB, $fondRGB, $alpha = 0)
{
$vColor = array();
// Calculer un gradient de couleurs
$hex1 = ColorGradient::rgb2hex($couleurRGB);
$hex2 = ColorGradient::rgb2hex([255,255,255]);
if ($hex2 == ColorGradient::rgb2hex($fondRGB)) $hex2 = ColorGradient::rgb2hex([0,0,0]);
$hex_val = array( $hex1, $hex2 );
$gradient = ColorGradient::gradient($hex_val[0], $hex_val[1], $nb_colors);
// Pour chaque couleur, on rajoute deux informations
// - un pourcentage
// - une couleur GD
for($i=0;$i<$nb_colors;$i++)
{
$rgbval = ColorGradient::hex2rgb($gradient[$i]);
$vColor[$i] = new ColorGradient();
$vColor[$i]->pct = ($i * 1.0) / $nb_colors;
$vColor[$i]->color = imagecolorallocatealpha($vImage, $rgbval[0], $rgbval[1], $rgbval[2], $alpha);
}
return $vColor;
}
?>