Aktueller Standort: Startseite> Neueste Artikel> So verwenden Sie den Bildvergleich, um die Richtigkeit der Polygonzeichnung zu überprüfen

So verwenden Sie den Bildvergleich, um die Richtigkeit der Polygonzeichnung zu überprüfen

M66 2025-05-29

Wie überprüfen Sie die Richtigkeit der Polygonzeichnung mithilfe der BildOpenpolygon -Funktion und der Bildvergleichsmethode von PHP?

Die Bildverarbeitungsbibliothek von PHP bietet eine Fülle von Funktionen, mit denen Entwickler Bilder verarbeiten und Grafiken zeichnen können. Die ImageOpenPolygon -Funktion ist eine der Funktionen, die zum Zeichnen von Polygonen verwendet werden, und eignet sich für Szenarien, in denen Polygone gezogen und validiert werden müssen. In einigen Anwendungen müssen wir sicherstellen, dass die gezogenen Polygone genau sind. Zu diesem Zeitpunkt können wir durch Bildvergleich effektiv überprüfen, ob die Zeichnung des Polygons den Erwartungen entspricht.

In diesem Artikel wird vorgestellt, wie die ImageOpenPolygon -Funktion von PHP in Kombination mit dem Bildvergleich verwendet wird, um die Richtigkeit der Polygonzeichnung zu überprüfen.

1. Überblick über die ImageOpenpolygon -Funktion

In PHP wird die ImageOpenPolygon -Funktion verwendet, um ein geschlossenes Polygon auf einem Bild zu zeichnen. Die grundlegende Syntax ist wie folgt:

 imageopenpolygon(resource $image, array $points, int $num_points)
  • $ Bild : Zielbildressource.

  • $ Punkte : Ein Array, das die Koordinaten der Polygonscheitelpunkte enthält. Jeder Scheitelpunkt besteht aus zwei numerischen Werten (x- und y -Koordinaten).

  • $ num_points : Die Anzahl der Polygonscheitelpunkte.

2. Beispielcode: Polygone zeichnen

Wir zeichnen zuerst ein einfaches Dreieck mit der ImageOpenPolygon -Funktion und speichern es als Bilddatei. Hier ist ein Code -Beispiel zum Zeichnen und Speichern eines Bildes:

 <?php
// Erstellen Sie ein leeres Bild
$image = imagecreatetruecolor(400, 400);

// Setzen Sie die Hintergrundfarbe auf Weiß
$white = imagecolorallocate($image, 255, 255, 255);
imagefill($image, 0, 0, $white);

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

// Definieren Sie die Scheitelpunktkoordinaten eines Polygons
$points = [
    150, 50,  // Der erste Punkt (X, Y)
    250, 50,  // Der zweite Punkt (X, Y)
    200, 150  // Der dritte Punkt (X, Y)
];

// Polygone zeichnen
imageopenpolygon($image, $points, 3);

// Speichern Sie das Bild
imagepng($image, 'polygon.png');

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

3.. Bildvergleichsprüfung

Um zu überprüfen, ob das Polygon korrekt gezeichnet wird, kann es durch Bildvergleich erreicht werden. Die Grundidee besteht darin, die gezeichneten Bilder mit einem erwarteten "korrekten" Bild zu vergleichen und ihre Unterschiede zu überprüfen. Wir können diese Überprüfung durchführen, indem wir den Hash -Wert des Bildes berechnen.

Hier ist ein Beispielcode, um die Richtigkeit der Polygonzeichnung nach Bildhashvergleich zu überprüfen:

 <?php
// Laden Sie das tatsächliche gezeichnete Bild
$actual_image = 'polygon.png';
// Laden Sie das erwartete richtige Bild
$expected_image = 'expected_polygon.png';

// Berechnen Sie den Hash -Wert von zwei Bildern
$actual_hash = md5_file($actual_image);
$expected_hash = md5_file($expected_image);

// Vergleich der Hash -Werte von zwei Bildern
if ($actual_hash === $expected_hash) {
    echo "Polygon richtig zeichnen!\n";
} else {
    echo "Die Polygonzeichnung ist falsch!\n";
}
?>

In diesem Beispiel verwenden wir die Funktion md5_file , um den MD5 -Hash -Wert der Bilddatei zu berechnen. Durch den Vergleich der Hash -Werte des tatsächlichen Bildes und des erwarteten Bildes können wir feststellen, ob die beiden gleich sind. Wenn die Hash -Werte konsistent sind, bedeutet dies, dass das gezogene Polygon korrekt ist; Andernfalls bedeutet dies, dass es ein Problem mit der Zeichnung gibt.

4. Zusammenfassung

Durch die Kombination von PHPs ImageOpenPolygon -Funktion und Bildvergleichstechnologie können wir die Richtigkeit des Zeichnens von Polygonen effektiv überprüfen. Durch die Berechnung des Hash -Wertes des Bildes kann der Unterschied zwischen den Zeichnungsgebnissen und den erwarteten Ergebnissen schnell verglichen werden, wodurch Entwickler zeitnahe Zeichnungsprobleme entdecken und korrigieren können.