Ich implementiere eine App zum Einfärben mit Swift 3.0
. Ich bekomme einen CGContext
von einem UIImageView
und zeichne UIBezierPath
darüber in UITouch
Ereignisse Methoden - beginnen, verschieben und beendet -.iOS bekomme Schnittpunkt Pixel zwischen einem UIBezierPath und einem Bild
Wie kann ich die Schnittpixel zwischen dem Kontextbild und dem Pfad erhalten? Ich brauche alle Pixel nicht nur Kontrollpunkte des Pfades.
Könnten Sie bitte Ihren Code und einen Screenshot hinzufügen? – Ocunidee
Die Technik wird ähnlich der hier angegebenen sein: http://robnapier.net/clipping-cgrect-cgpath. In diesem Fall sollten Sie die Überblendung einschließen. Zeichnen Sie Ihr Bild in einen Graustufen-Kontext. Gehe durch den Kontext und mache jedes Pixel, das nicht schwarz ist, reinweiß. Dann zeichnen Sie Ihre Kurve in Schwarz, mit Blending. Gehe dann durch und finde jedes Pixel, das nicht genau weiß oder genau schwarz ist. Das sind die Überschneidungen. Ich kann den Code dafür in Swift jetzt nicht schreiben, aber es sollte dich auf die richtige Spur bringen. –