En PHP, l'utilisation de la bibliothèque GD pour gérer les graphiques est une exigence très courante. En particulier dans la programmation graphique, le dessin de polygones réguliers est une opération de base. Cet article expliquera comment calculer les coordonnées du sommet d'un polygone ordinaire et utiliser la fonction d'imageOpenPolygon pour dessiner un polygone ordinaire.
Un polygone ordinaire fait référence à un polygone avec des bords et des angles égaux. Pour un polygone ordinaire, nous pouvons calculer les coordonnées de chaque sommet via un système de coordonnées polaires.
Supposons que nous voulons dessiner un côté N régulier, et la coordonnée du point central de ce polygone est (CX, Cy) et le rayon est R , nous pouvons calculer les coordonnées de chaque sommet à travers la formule suivante:
L'intervalle d'angle de chaque sommet est à 360 / n degrés
L'angle du kth vertex est 2 * pi * k / n
Les coordonnées du sommet sont:
x = cx + r * cos (angle)
y = cy + r * sin (angle)
PHP est utilisé pour calculer les coordonnées du sommet et dessiner des polygones réguliers en utilisant la fonction ImageOpenPolygon . Voici le code complet de l'implémentation:
<?php
// Réglez la largeur et la hauteur de l'image
$width = 400;
$height = 400;
// Créer des ressources d'image
$image = imagecreatetruecolor($width, $height);
// Définir les couleurs d'arrière-plan
$bgColor = imagecolorallocate($image, 255, 255, 255); // Blanc
imagefill($image, 0, 0, $bgColor);
// Réglez la couleur du polygone
$polygonColor = imagecolorallocate($image, 0, 0, 255); // bleu
// Le centre et le rayon du polygone
$cx = $width / 2;
$cy = $height / 2;
$r = 100; // rayon
$n = 6; // Nombre de bords(Hexagone ordinaire)
// Calculez les coordonnées de chaque sommet
$points = [];
for ($i = 0; $i < $n; $i++) {
$angle = 2 * pi() * $i / $n;
$x = $cx + $r * cos($angle);
$y = $cy + $r * sin($angle);
$points[] = $x;
$points[] = $y;
}
// utiliserimageopenpolygonFonction dessinant des polygones réguliers
imagepolygon($image, $points, $n, $polygonColor);
// Image de sortie au navigateur
header('Content-Type: image/png');
imagepng($image);
// Libérez des ressources d'image
imagedestroy($image);
?>
Création d'images et paramètres d'arrière-plan : Tout d'abord, une image avec une largeur et une hauteur de 400x400 est créée via la fonction ImageCreateTrueColor . Ensuite, utilisez ImageColorAllocate pour définir la couleur de fond sur blanc.
Calcul des coordonnées du sommet : nous calculons les coordonnées de chaque sommet d'un polygone ordinaire en fonction de la formule mentionnée ci-dessus. Calculez les coordonnées x et y de chaque sommet via les fonctions COS et SIN et enregistrez ces coordonnées dans un tableau $ Points .
Dessiner des polygones réguliers : la fonction ImagePolygon prend un tableau contenant toutes les coordonnées du sommet et dessine un polygone basé sur ces coordonnées.
Image de sortie : utilisez l'imagepng pour sortir l'image du navigateur et enfin afficher le polygone ordinaire dessiné dans le navigateur.
Grâce aux étapes ci-dessus, nous calculons avec succès les coordonnées du sommet du polygone ordinaire et dessinons le polygone ordinaire en utilisant la fonction ImagePolygon en PHP. Cette méthode peut être étendue à n'importe quel polygone ordinaire, et vous pouvez dessiner des polygones de différentes tailles et formes en ajustant simplement le nombre de bords n et rayon r .