Aktueller Standort: Startseite> Neueste Artikel> Berechnung der regulären Polygon -Vertex -Koordinaten für ImageOpenpolygon ()

Berechnung der regulären Polygon -Vertex -Koordinaten für ImageOpenpolygon ()

M66 2025-05-29

In PHP ist die Verwendung der GD -Bibliothek zur Verarbeitung von Grafiken eine sehr häufige Voraussetzung. Insbesondere bei der grafischen Programmierung ist das Zeichnen regulärer Polygone ein grundlegender Betrieb. In diesem Artikel wird erläutert, wie die Scheitelpunktkoordinaten eines regulären Polygons berechnet werden und die ImageOpenPolygon -Funktion verwendet werden, um ein reguläres Polygon zu zeichnen.

1. Berechnen Sie die Koordinaten der regulären Polygonscheitelpunkte

Ein reguläres Polygon bezieht sich auf ein Polygon mit gleichen Kanten und Winkeln. Für ein reguläres Polygon können wir die Koordinaten jedes Scheitelpunkts über ein polares Koordinatensystem berechnen.

Angenommen, wir möchten eine reguläre Naht zeichnen, und die Mittelpunktkoordinate dieses Polygons ist (CX, Cy) und der Radius ist r . Wir können die Koordinaten jedes Scheitelpunkts durch die folgende Formel berechnen:

  • Das Winkelintervall jedes Scheitelpunkts beträgt 360/n Grad

  • Der Winkel des KTH -Scheitelpunkts beträgt 2 * pi * k / n

  • Die Koordinaten des Scheitelpunkts sind:

    • x = cx + r * cos (Winkel)

    • y = cy + r * sin (Winkel)

2. PHP -Implementierungscode

PHP wird verwendet, um die Vertex -Koordinaten zu berechnen und regelmäßige Polygone unter Verwendung der ImageOpenPolygon -Funktion zu zeichnen. Hier ist der vollständige Code für die Implementierung:

 <?php
// Stellen Sie die Breite und Höhe des Bildes ein
$width = 400;
$height = 400;

// Bildressourcen erstellen
$image = imagecreatetruecolor($width, $height);

// Hintergrundfarben setzen
$bgColor = imagecolorallocate($image, 255, 255, 255); // Weiß
imagefill($image, 0, 0, $bgColor);

// Stellen Sie die Farbe des Polygons ein
$polygonColor = imagecolorallocate($image, 0, 0, 255); // Blau

// Das Zentrum und der Radius des Polygons
$cx = $width / 2;
$cy = $height / 2;
$r = 100; // Radius
$n = 6; // Anzahl der Kanten(Regelmäßiges Sechseck)

// Berechnen Sie die Koordinaten jedes Scheitelpunkts
$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;
}

// verwendenimageopenpolygonFunktion zeichnen normale Polygone
imagepolygon($image, $points, $n, $polygonColor);

// Ausgabe Bild zum Browser
header('Content-Type: image/png');
imagepng($image);

// Bildressourcen freigeben
imagedestroy($image);
?>

3. Codeanalyse

  1. Bilderstellung und Hintergrundeinstellungen : Erstens wird ein Bild mit einer Breite und Höhe von 400 x 400 über die Funktion "ImageCrreatTueColor" erstellt. Verwenden Sie dann Imageber und stellen Sie die Hintergrundfarbe auf Weiß ein.

  2. Scheitelpunktkoordinatenberechnung : Wir berechnen die Koordinaten jedes Scheitelpunkts eines regulären Polygons basierend auf der oben genannten Formel. Berechnen Sie die X- und Y -Koordinaten jedes Scheitelpunkts durch die COS- und SIN -Funktionen und speichern Sie diese Koordinaten in einem Array $ -Punkte .

  3. Zeichnen Sie regelmäßige Polygone : Die Bildpolygonfunktion nimmt ein Array mit, das alle Scheitelpunktkoordinaten enthält, und zeichnet ein Polygon basierend auf diesen Koordinaten.

  4. Ausgabebild : Verwenden Sie ImagePng , um das Bild in den Browser auszugeben und schließlich das gezeichnete reguläre Polygon im Browser anzeigen.

4. Zusammenfassung

In den obigen Schritten berechnen wir die Scheitelpunktkoordinaten des regulären Polygons erfolgreich und zeichnen das reguläre Polygon unter Verwendung der Bildpolygonfunktion in PHP. Diese Methode kann auf jedes reguläre Polygon ausgedehnt werden, und Sie können Polygone mit verschiedenen Größen und Formen zeichnen, indem Sie einfach die Anzahl der Kanten n und Radius r einstellen.