AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Bitmap Fade in and out Problem

Ein Thema von sexmagic · begonnen am 14. Sep 2007 · letzter Beitrag vom 17. Sep 2007
 
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#4

Re: Bitmap Fade in and out Problem

  Alt 17. Sep 2007, 08:53
Deine Funktionen sind etwas zu speziell und daher ungeeignet um sie so einfach in ein beliebiges Projekt einzubinden.
Mein Vorschlag:
du brauchst eine Funktion, die 2 gleichgrosse Bitmaps entgegennimmt und über den Parameter "blend",
auf ein 3. Ausgabebitmap kopiert.
procedure BlendBitmap(BitmapA, BitmapB:TBitmap; bitmapOut:TBitmap; blend:double=0.5); Bei Blend = 0.0 wird nur BitmapA -> bitmapOut kopiert.
Bei Blend = 1.0 wird nur Bitmapb -> bitmapOut kopiert.

In deinem Fall wird ja von einem schwarzen Bitmap auf das Bitmap eingeblendet (Fade In).
Umgekehrt wäre es ein Fade Out.
Mit der BlendBitmap Prozedure kannst du diese Effekte ebenfalls erreichen, weil du zwei
völlig beliebige Bilder (eines davon kann auch komplett schwarz sein) überblenden kannst.
Weitere Vorteil: mit BlendBitmap kannst du die Anzahl der Abstufungen völlig frei selber wählen.
In deinen Funktionen sind es 32 Stufen.
Ausserdem ist in FadeOut ein Fehler:
Delphi-Quellcode:
for step := 32 downto 0 do
    ...
    Row[x].rgbtRed := (step * BaseRow[x].rgbtRed) shr 8; // richtig wäre shr 5;
    Row[x].rgbtGreen := (step * BaseRow[x].rgbtGreen) shr 8; // weil 2 ^ 5 = 32
    Row[x].rgbtBlue := (step * BaseRow[x].rgbtBlue) shr 8;
Andreas
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz