Hallo Forum,
ich möchte ein BufferedImage sehr häufig hintereinander auf ein Fenster zeichnen. Dabei ist die Originalbilddatei komplett schwarz, hat aber unterschiedliche Transparenzwerte, sodass sie wirkt, als würde sie aus verschiedenen Grautönen bestehen. Beim Zeichnen des Bilds soll nun zwischen diesem Schwarz und einem festgelegten Blauton "interpoliert", aber die Alphawerte beibehalten werden. Am Ende soll das Bild eben anfangs grau erscheinen, und alles was grau war, soll immer mehr ins Blaue übergehen.
Hab zu dem Thema jetzt schon recherchiert wie blöd und leider keine Lösung gefunden. Ich hab's mit einem LookupOp mit eigens programmiertem LookupTable probiert. Allerdings verstehe ich die genaue Funktionsweise nicht ganz. In Anlehnung an meine OpenGL-Erfahrung, wo man mit Blending einfach vorher das Bild als AlphaMap einzeichnen könnte und dann nur ein Rechteck in der gewünschten Farbe an dieselbe Stelle malen müsste, habe ich es mal mit AlphaComposite versucht. Wollte aber auch nicht so recht, zumal ich die verschiedenen Modi sehr verwirrend finde.
Wie also kann man ein Bild performant mit einer bestimmten Farbe filtern, aber eben nicht vorneweg in ein neues Bild, sondern bei jedem Mal Zeichnen neu?
Sorry für mal wieder so viel Text,
danke für alle Antworten!
ich möchte ein BufferedImage sehr häufig hintereinander auf ein Fenster zeichnen. Dabei ist die Originalbilddatei komplett schwarz, hat aber unterschiedliche Transparenzwerte, sodass sie wirkt, als würde sie aus verschiedenen Grautönen bestehen. Beim Zeichnen des Bilds soll nun zwischen diesem Schwarz und einem festgelegten Blauton "interpoliert", aber die Alphawerte beibehalten werden. Am Ende soll das Bild eben anfangs grau erscheinen, und alles was grau war, soll immer mehr ins Blaue übergehen.
Hab zu dem Thema jetzt schon recherchiert wie blöd und leider keine Lösung gefunden. Ich hab's mit einem LookupOp mit eigens programmiertem LookupTable probiert. Allerdings verstehe ich die genaue Funktionsweise nicht ganz. In Anlehnung an meine OpenGL-Erfahrung, wo man mit Blending einfach vorher das Bild als AlphaMap einzeichnen könnte und dann nur ein Rechteck in der gewünschten Farbe an dieselbe Stelle malen müsste, habe ich es mal mit AlphaComposite versucht. Wollte aber auch nicht so recht, zumal ich die verschiedenen Modi sehr verwirrend finde.
Wie also kann man ein Bild performant mit einer bestimmten Farbe filtern, aber eben nicht vorneweg in ein neues Bild, sondern bei jedem Mal Zeichnen neu?
Sorry für mal wieder so viel Text,
danke für alle Antworten!