ERLEDIGT
NEIN
NEIN
ANTWORTEN
0
0
ZUGRIFFE
620
620
EMPFEHLEN
-
Moin zusammen,
um drei sich in der bekannten Manier überschneidende Kreise eines Farbsterns zu zeichnen, die an den Überschneidungsstellen die additiven Farbwerte zeigen, habe ich drei ARGB-BufferedImages erzeugt, auf die ich drei Kreise in rot, grün und blau per fillOval() zeichne und diese dann per JAI.AddDescriptor kombiniere. Bei der genannten Methode
funktioniert jedoch die Addition nicht und die Farben überdecken sich
vollständig anstatt sich zu mischen.
Führe ich das Ganze jedoch mit extern per Gimp erstellten *.png-Bildern durch klappt's prima.
Wie erreiche ich die Farbaddition über die BufferedImages?
Hier die relevanten Codeteile
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
[...] initImages(); ParameterBlock pb = new ParameterBlock(); pb.addSource(sourceImage1); pb.addSource(sourceImage2); //pb.add(RenderingHints.KEY_ALPHA_INTERPOLATION); ergebnis = JAI.create("add", pb); ParameterBlock pb2 = new ParameterBlock(); pb2.addSource(ergebnis); pb2.addSource(sourceImage3); //pb2.add(RenderingHints.KEY_ALPHA_INTERPOLATION); endErgebnis = JAI.create("add", pb2); DisplayJAI dj = new DisplayJAI(endErgebnis); this.add(dj); [...] // Images erstellen private void initImages() { buff1 = new BufferedImage(400, 400, BufferedImage.TYPE_INT_ARGB); buff2 = new BufferedImage(400, 400, BufferedImage.TYPE_INT_ARGB); buff3 = new BufferedImage(400, 400, BufferedImage.TYPE_INT_ARGB); Graphics g1 = buff1.getGraphics(); g1.setColor(Color.RED); g1.fillOval(100, 0, 200, 200); Graphics g2 = buff2.getGraphics(); g1.setColor(Color.GREEN); g1.fillOval(40, 120, 200, 200); Graphics g3 = buff3.getGraphics(); g1.setColor(Color.BLUE); g1.fillOval(160, 120, 200, 200); // SourceImages erstellen sourceImage1 = PlanarImage.wrapRenderedImage(buff1); sourceImage2 = PlanarImage.wrapRenderedImage(buff2); sourceImage3 = PlanarImage.wrapRenderedImage(buff3); }
Danke und Gruß Jörg
Ähnliche Themen
-
BufferedImage => Byte[] => BufferedImage
Von javaboon im Forum JavaAntworten: 19Letzter Beitrag: 17.04.10, 22:35 -
BufferedImage -> byte[] Array -> BufferedImage
Von mr_g666 im Forum JavaAntworten: 10Letzter Beitrag: 06.08.08, 08:54 -
BufferedImage serialisieren
Von programsearch im Forum JavaAntworten: 2Letzter Beitrag: 25.09.07, 12:52 -
BufferedImage --> byte[]
Von Loki2 im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 10Letzter Beitrag: 29.03.07, 13:26 -
BufferedImage im Applet ?
Von munuel im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 0Letzter Beitrag: 27.06.05, 21:47





Zitieren
Login





