Wenn Sie diese Funktion verwenden möchten, müssen Sie den Pfad jedes Mal neu erstellen, wenn Sie den Test durchführen möchten (rufen Sie nicht fill
oder stroke
auf).
Was ich normalerweise mache, ist meine eigene Point-in-Polygon-Testfunktion oder meine eigene räumliche Datenstruktur, wenn viele Objekte und Geschwindigkeit wichtig sind.
Beachten Sie, dass eine Zeichenfläche nur eine Bitmap ist und nicht die Befehle speichert, mit denen Sie darauf zeichnen. Aus diesem Grund kann der Check nach dem Zeichnen einer Form nicht ausgeführt werden und Sie können nur den aktuellen Pfad testen.
Wenn Sie beginPath
aufrufen, wird die vorherige Pfadgeometrie verworfen und Sie haben nur die betroffenen Pixel, wenn Sie fill
oder stroke
aufgerufen haben.
Vielleicht ist es für Ihren Fall sinnvoll, die Farbe des Leinwandpixels zu überprüfen ...
Tags und Links javascript html5 canvas