Einzelnen Beitrag anzeigen

Benutzerbild von TOC
TOC

Registriert seit: 5. Jan 2005
Ort: Trier
248 Beiträge
 
Delphi 7 Personal
 
#12

Re: Wie kann man ein BitMap in ein Trapez blitten?

  Alt 10. Mai 2008, 15:57
Hi!

Zitat von winx:
gibt es auch die Möglichkeit das umgekehrt zu machen? einen trapezförmigen Ausschnitt aus
einem Bild in ein Rechteck zu transformieren? Geht das auch mit der projektiven Transformation der
GR32?
danke
Ich hab da extra mal in der Graphics32.help rumgewühlt. Prinzipiell sind ALLE Transform-Objekte von TTransform abgeleitet das über eine Eigenschaft SrcRect: TFloatRect verfügt. Die eingebauten Verformungsobjekte wie TAffineTransformation, TProjectiveTransformation etc. gehen deshalb alle davon aus das ein Rechteck in eine andere Form transformiert werden soll. Der Umgekehrte Weg ist leider nicht eingebaut !

Trotzdem ist es möglich, man kann mit der Methode "Transform" von zum Beispiel TProjectiveTransformation die Koordinaten eines Punktes umrechen lassen und dann sozusagen "von Hand" Punkt für Punkt zurück kopieren. Schnell ist dies sicher nicht, aber es funzt.

Im Anhang findest Du ein kleines Delphi-Programm mit 2 Methoden:

Button1Click transformiert eine rechteckige Grafik in ein Trapez

Button2Click transformiert dieses Trapez "Von Hand" wieder zurück in ein Rechteck.

Grüsse von TOC !
Angehängte Dateien
Dateityp: zip transform-2_764.zip (345,0 KB, 48x aufgerufen)
Lars Uwe Hohmann
"Wäre die Erde eine Bank, ihr hättet sie längst gerettet!"
(Zitat GreenPeace)
  Mit Zitat antworten Zitat