Core-Graphics-Koordinatensystem
Beim überschreiben drawRect
ich habe festgestellt, dass die Koordinaten dort verwenden 0,0 die Obere linke.
Aber die Apple UIView Programming Guide sagt:
Einige iOS-Technologien definieren Standard-Koordinatensystem, dessen Nullpunkt und Ausrichtung unterscheiden sich von denen von UIKit. Zum Beispiel, Core Graphics und OpenGL ES verwenden ein Koordinatensystem, dessen Ursprung in der unteren linken Ecke der Ansicht oder das Fenster, und deren y-Achse zeigt nach oben relativ zu dem Bildschirm.
Ich bin verwirrt, reden Sie etwas anderes als Quarz, wenn Sie sich auf Core-Grafik hier?
Du musst angemeldet sein, um einen Kommentar abzugeben.
"Core-Grafik", die in dieser Dokumentation bedeutet "Quarz", ja. Es ist nur eine starke Vereinfachung.
Beim erstellen einer
CGContext
sich, das Koordinatensystem hat den Ursprung in der linken unteren Ecke. Wenn UIKit erstellt, dieCGContext
für Zeichnung in einen der Ansicht, dass es hilfreich dreht das Koordinatensystem vor dem Aufruf-drawRect:
.Core-Grafik-und Quarz auf iOS sind, so weit wie die Koordinaten gehen, die gleiche Sache. Die iOS-Technologien-Guide sagt so:
Die Unterscheidung ist, dass, technisch gesehen, Quartz ist die Technologie bzw. der Mechanismus, und "Core-Grafik" ist der name des Frameworks. (Auf Mac OS, natürlich, es gibt tatsächlich eine "Quartz" - framework, das nur ein Regenschirm.)
Sich für das wohl anderer zu finden in diesem thread:
Gibt es eine vollständige Erklärung von Koordinatensystemen hier: Koordinatensysteme in Kakao
Ist es nicht gerade hilfreich, dass Sie sich unterscheiden. Gibt es Methoden zur Konvertierung zwischen den Koordinatensystemen, die auf den verschiedenen Ebenen der anzeigen in Ihrer App! Zum Beispiel findet die Koordinaten von dem Punkt, dass es bei (20,20), die in den sichtbaren Bildschirm ein vergrößertes Bild. Das Ergebnis ist in Bezug auf die Herkunft des gezoomten Bild kann jetzt Weg sein im Raum.