Dans PHP, nous pouvons utiliser la fonction ImageOpenPolygon () pour dessiner des polygones. En utilisant rationnellement cette fonction, nous pouvons non seulement dessiner n'importe quel polygone, mais aussi dessiner des formes simples telles que les triangles réguliers. Cet article introduira en détail comment dessiner un triangle régulier à travers la fonction ImageOpenPolygon () .
La fonction ImageOpenPolygon () fait partie de la bibliothèque GD en PHP, ce qui nous permet de dessiner des polygones à travers un ensemble de sommets. Le format d'utilisation de base de la fonction est le suivant:
imageopenpolygon($image, $points, $num_points, $color);
$ Image : Ressource d'image, généralement une ressource d'image créée par ImageCreateTrueColor () ou une autre fonction de création d'image.
$ Points : un tableau contenant les coordonnées des vertexes de polygone.
$ num_points : le nombre de sommets.
$ couleur : la couleur utilisée lors du dessin de polygones.
La caractéristique d'un triangle ordinaire est que les longueurs des trois côtés sont égales et que les trois angles intérieurs sont égaux (60 degrés). Afin de dessiner un triangle régulier sur la toile, nous devons d'abord déterminer les coordonnées des trois sommets. Supposons que nous choisissons une longueur latérale et un point de départ appropriés pour calculer les positions de ces trois sommets.
Nous devons d'abord créer une ressource d'image. Utilisez la fonction ImageCreateTrueColor () pour créer une toile vierge.
$image = imagecreatetruecolor(200, 200); // Créer un 200x200 Toile
Utilisez la fonction ImageColorAllocate () pour définir la couleur du triangle dessiné.
$white = imagecolorallocate($image, 255, 255, 255); // Réglez la couleur sur le blanc
$black = imagecolorallocate($image, 0, 0, 0); // Réglez la couleur de la bordure en noir
Sur la base des propriétés géométriques d'un triangle régulier, nous pouvons calculer ses sommets. Supposons que le côté mesure 100 pixels et les sommets du triangle sont placés au centre de la toile.
$centerX = 100; // Centre de toile X coordonner
$centerY = 100; // Centre de toile Y coordonner
$sideLength = 100; // Longueur latérale
// 计算三角形的三个sommetcoordonner
$points = [
$centerX, $centerY - $sideLength / 2, // sommet1
$centerX - $sideLength / 2, $centerY + $sideLength / 2, // sommet2
$centerX + $sideLength / 2, $centerY + $sideLength / 2 // sommet3
];
Maintenant, utilisez la fonction imageOpenPolygon () pour dessiner le triangle.
imagefilledpolygon($image, $points, 3, $black); // Remplir le triangle,3 为sommet数
Enfin, émettez l'image et libérez la ressource.
header("Content-type: image/png");
imagepng($image); // Image de sortie
imagedestroy($image); // Détruiser les ressources d'image
<?php
// Créer des ressources d'image
$image = imagecreatetruecolor(200, 200); // Créer un 200x200 Toile
// Définir la couleur
$white = imagecolorallocate($image, 255, 255, 255); // Blanc
$black = imagecolorallocate($image, 0, 0, 0); // noir
// 计算三角形的sommet
$centerX = 100;
$centerY = 100;
$sideLength = 100;
$points = [
$centerX, $centerY - $sideLength / 2, // sommet1
$centerX - $sideLength / 2, $centerY + $sideLength / 2, // sommet2
$centerX + $sideLength / 2, $centerY + $sideLength / 2 // sommet3
];
// Dessiner un triangle
imagefilledpolygon($image, $points, 3, $black); // Remplir le triangle
// Image de sortie并清理资源
header("Content-type: image/png");
imagepng($image); // Image de sortie
imagedestroy($image); // Détruiser les ressources d'image
?>
ImageCreateTrueColor () est utilisé pour créer une toile avec une taille de 200x200 suffisante pour accueillir un triangle régulier.
ImageColorAllocate () est utilisé pour régler la couleur sur la toile, remplir l'arrière-plan de blanc et dessiner des triangles en noir.
ImageFildPolygon () est une fonction clé pour dessiner des triangles, qui dessine des triangles basés sur le tableau de sommet fourni.
ImageOpenPolygon () ne convient qu'aux polygones, donc pour nous assurer que les limites sont remplies, nous utilisons la fonction ImageFildPolygon () .
Si vous devez générer une image et l'enregistrer dans un fichier, vous pouvez utiliser ImagePng () pour enregistrer l'image dans un fichier spécifié, par exemple:
imagepng($image, "triangle.png");
Avec la méthode ci-dessus, vous pouvez dessiner un triangle régulier en utilisant les fonctions ImageOpenPolygon () et ImageFildPolygon () . Vous pouvez ajuster la taille, la couleur ou la position du triangle au besoin. Cet exemple montre comment dessiner des formes géométriques de base à l'aide de la bibliothèque PHP GD, que vous pouvez étendre pour dessiner des formes plus complexes.