AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Differenz zweier Bitmaps speichern
Thema durchsuchen
Ansicht
Themen-Optionen

Differenz zweier Bitmaps speichern

Ein Thema von meisteralex · begonnen am 13. Dez 2005 · letzter Beitrag vom 28. Feb 2007
 
Cicaro

Registriert seit: 9. Feb 2005
285 Beiträge
 
Delphi 7 Personal
 
#22

Re: Differenz zweier Bitmaps speichern

  Alt 22. Dez 2005, 09:08
Zitat von meisteralex:
wie mach ich das denn nun ??

also ich bekomme mit

bitblt(dc2,0,0,W,H,dc1,0,0,mergepaint)

schon so zimich genau die differenz der beiden bilder hin
wie komme ich jedoch mit hilfe von dc1 und der differenz, welche nun in dc2 liegt, wieder zum ausgangsbild dc2 ???

also nochmal
ich hab dc1 (vor veränderung) und dc2 (nach veränderung)
mit bitblt(dc2,0,0,W,H,dc1,0,0,mergepaint) liegt nun in dc2 die eigentliche veränderung (reduziert auf die teile die sich auch wirklich verändert haben)
wie bekomme ich nun aus dc1 und dc2 wieder das ehemalige dc2, also das komplette bild und nicht nur die veränderungen??
wäre sehr nett wenn mir da jemand helfen könnte
Ich bin mir jetzt nicht sicher, wie du die Differenz zweier Bitmaps definiers. Was ich vorzuschlagen versuche, ist, dass man die beiden DCs der beiden Bitmaps so durch BitBlt verknüpft, dass man DIE Bits, die in den Pixeln an der gleichen Stelle gleich sind, durch NULL ersetzt. Das Ergebnis sollte dann in einem dritten Bitmap gespeichert werden.
Delphi-Quellcode:
// Beispiel (theoretisch):
// Vergleich von
Bitmap1.Canvas.Pixels[0,0] = 010101010101010101010101
Bitmap2.Canvas.Pixels[0,0] = 001100110011001100110011
// herauskommen sollte, wenn Bitmap1-Bitmap2:
Bitmap3.Canvas.Pixels[0,0] = 010001000100010001000100
// für Bitmap2-Bitmap1 sieht es dann etwas anders aus
Das sollte mit BitBlt gehen.

Vielleicht hilft das was, wenn du in der Unit 'Windows.pas' mal nach den Konstanten SRCPAINT und SRCCOPY suchst. Da stehen einige einleuchtende erläuterungen dabei.

Da die Differenz zweier Bitmaps ein scheinbar so großes Problem darstellt , werd' ich mich mal mit der Lösung etwas genauer befassen...
  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 17:20 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