Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Vierecke mit Bildern füllen (https://www.delphipraxis.net/15867-vierecke-mit-bildern-fuellen.html)

F.W. 5. Feb 2004 15:21


Vierecke mit Bildern füllen
 
Hallo mal wieder!

Man kann ja ein Viereck mit Bildern füllen(Ich glaube mit Rects, ist aber schon lange her bei mir!).

Jetzt möchte ich aber so ein Viereck füllen (ich weiß jetzt nicht genau wie's heißt, darum umschreibe ich's mal), dass zwei verschieden lange Seiten hat, die parallel zu einander verlaufen!

Code:
  /----\
 /------\
/--------\
So sieht's aus (in meinem Programm liegt es dann auf der Seite).

Gibts da irgendeine Prozedur? Das Wichtige ist, dass das Bild dabei verzogen wird!

[Edit: Habe das "geschriebene" Dreieck mit nullen ausgestattet, denn Leerzeichen werden nicht beachtet; verdammte Schriftart, die Zeichen sind unterschl. groß]

[edit=Luckie]Code-Tags benutzen. ;) Mfg, Luckie[/edit]

Chef16 6. Feb 2004 01:07

Re: Vierecke mit Bildern füllen
 
Hallo,

guck dir mal TCanvas.FillRect an.
und TCanvas.Brush.Bitmap.

MFG
Sven!

F.W. 6. Feb 2004 11:24

Re: Vierecke mit Bildern füllen
 
Zur Not könnte ich das benutzen, allerdings wird da nur der Teil den es betrifft rausgeschnitten, nicht verzerrt, was ja eigentlich sein sollte. Naja, mal sehen...

OregonGhost 6. Feb 2004 12:03

Re: Vierecke mit Bildern füllen
 
Da musst du wohl die Bitmap zeilenweise (bzw. wenn's um 90° gedreht ist spaltenweise) zeichnen, und zwar jede Zeile einzeln strecken. Ich weiß nicht, ob Delphi direkt dafür geeignete Funktionen beinhaltet (mit etwas Arbeit geht's immer), aber mit der API-Funktion StretchBlt ist das keine große Sache. Einfach jeweils als Quellrechteck die komplette Zeile in der Bitmap angeben, und als Zielrechteck jeweils die gestreckte (bzw. verkürzte) Zeile, und das dann Zeile für Zeile.

dizzy 6. Feb 2004 12:10

Re: Vierecke mit Bildern füllen
 
Was du willst ist eine Trapez-Verzerrung. Hab für sowas noch keine fertigen Kompos gesehen, daher musst du wohl selber ran. Dürfte aber nicht all zu schwer sein. Einziges Ding: Ein AA-Filter wäre da hilfreich, da es sonst zu unschönen "Verpixelungen" kommen könnte. Da empfehle ich mal die Graphics32-Library ( www.g32.org ). Dort kann man auch Pixel auf z.B. (0.5; 1,5) zeichnen, und es wird automatisch auf die umliegenden Pixel anteilig übertragen. Klasse Teil das!


gruss,
dizzy

Chef16 7. Feb 2004 05:10

Re: Vierecke mit Bildern füllen
 
Zitat:

Zitat von F.W.
Zur Not könnte ich das benutzen, allerdings wird da nur der Teil den es betrifft rausgeschnitten, nicht verzerrt, was ja eigentlich sein sollte. Naja, mal sehen...

Hi,

du meinst das Bitmap stretchen? Das kannste doch dann einfach mit: TBitmap.Canvas.StrechtsDraw machen.

MFG
Sven!

F.W. 8. Feb 2004 12:00

Re: Vierecke mit Bildern füllen
 
Ok, das bringt mich wieder ein Stückchen weiter...

hboy 8. Feb 2004 12:37

Re: Vierecke mit Bildern füllen
 
Liste der Anhänge anzeigen (Anzahl: 1)
willst du sowas wie im Anhang ? hab für Canvas eine funktion zum zeichnen von beliebigen texturierten polygonen geschrieben.

hboy 8. Feb 2004 14:51

Re: Vierecke mit Bildern füllen
 
soll das bild in alle richtungen verzogen werden oder nur x-richtung?

F.W. 9. Feb 2004 14:34

Re: Vierecke mit Bildern füllen
 
Naja, in alle Richtungen wäre schon nicht schlecht, aber nur X-Achse ist auch ok.

Noch ein Info: Momentan arbeite ich eh nicht daran weiter, eine andere Technik verwendet werden muss.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:59 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz