![]() |
---|
Hallo, ich muss ein Bild aus einem Koordinatensystem in ein anderes übertragen. Bei dem ersten System ist der Koordinatennullpunkt oben/links und bei dem zweiten unten/links. Ich versuche mal in Bildern zu erklären was ich machen möchte. Grün markiert die Leinwand wo das Bild in dem ersten System gezeichnet wird. Das Bild wird geöffnet und ist größer als die Leihenwand: Bild1 http//www.pixup.de/img/201202221941563460.jpg Jetzt wird das Bild über eine Transformation skaliert auf die Breite des Sichtbereiches: Bild2 http//www.pixup.de/img/201202221942135522.jpg Jetzt wird es um 45° rotiert: Bild3 http//www.pixup.de/img/201202221942289994.jpg Und zum Schluss eine Translation durchgeführt: Bild4 http//www.pixup.de/img/201202221942450111.jpg Nun möchte ich das Bild in dem zweiten System mit dem Nullpunkt unten/links auf das Canvas zeichnen. Wenn ich es direkt zeichne, sieht es so aus. Bündig unten/links: Bild5 http//www.pixup.de/img/201202221951218585.jpg Jetzt muss alles umgerechnet werden. Das mache ich auch und führe entsprechende Transformationen durch. Wegen der Drehung passt aber die letzte Translation nicht. Das sind die Einzelnen Schritte (Transformationen und Zeichnen): 1. Verschieben zum Drehpunkt 2. Drehen 3. Zurück verschieben 4. Skalieren 5. Verschieben zur Zielposition 6. Zeichnen Diese Einzelne Schritte für sich alleine funktionieren: 1. Skalieren 2. Verschieben zur Zielposition 3. Zeichnen und 1. Verschieben zum Drehpunkt 2. Drehen 3. Zurück verschieben 4. Skalieren 5. Zeichnen Was jemand was ich falsch mache? Ich wäre für jeden Tipp dankbar. Für alle, die mir helfen möchten (automatisch von OnlineMathe generiert): "Ich möchte die Lösung in Zusammenarbeit mit anderen erstellen." |
![]() |
![]() |
Hi, vlt versuchst du noch einmal genauer zu beschreiben, was du tuen möchtest. Ich verstehe das Problem nicht ganz. Leider ist dies ein Mathe-Forum, also sei mir nicht bös' wenn ich etwas spitzfindig bin, aber aus einigen Dingen werd ich nicht recht schlau. Bild1/Bild2 sind aus mathematischer Sicht uninteressant. Dann rotierst du um 45 Grad, ich nehme mal an, dass du um den Koordinatenursprung drehst, allerdings sagst du, dass dieser oben links wäre. Das Bild ist allergins um 45 Grad um den Mittelpunkt des grünen Vierecks gedreht. Da scheint schon ein Translationsfehler vorzuliegen... Naja, und der Rest: Was zum Geier ist ein Canvas? :-) Lieben Gruß Sina |
![]() |
Nun das sieht doch nach Bildverarbeitung aus. Könntest du mir sagen mit welchem Programm ihr die Transformationen durchführt? Ich habe es mit Matlab gelernt. Generell mehr Informationen wären nicht schlecht. Wo soll denn sie Rotation stattfinden? Und dann wird eine Translation durchgeführt, das funktioniert zumindest. Auch wenn ich davon ausgehe, dass das Bild wohl nicht die richtige Position hat. Habt ihr eine Vorgabe für die Transformationen bekommen? Und was soll genau dabei herauskommen? @Sina: Ein Canvas siehst du in Bild 5 und nur in Bild 5 ;-). |
![]() |
Es geht bei diesem Problem um Bildverarbeitung auf iOS Gerät. Sprich iPhone/iPad. Dort hat die Benutzeroberfläche der Darstellungsnullpunkt oben/links und das Quartz womit ich das Bild im Hintergrund, so wie auf der Oberfläche zu sehen, auf ein JPEG (über Context) zeichnen möchte. Die Rotation auf dem ersten System findet in Der Tat im Zentrum des Bildes statt. Genau so muss ich es über Transformationen auf das zweite Koordinatensystem übertragen. Und der Nullpunkt bei dem zweiten ist unten/links. Bei dem ersten geht nach unten in die positive Richtung und bei dem zweiten System nach oben ins positive. Ach ja Canvas ist halt die Oberfläche wo das Bild drauf gezeichnet wird. |
Diese Frage wurde automatisch geschlossen, da der Fragesteller kein Interesse mehr an der Frage gezeigt hat.
|