Clipping

Eichelhäer

Bekanntes Mitglied
Hi, ich arbeite gerade mit graphics2d und habe ne Frage zum clipping. Ich habe mit setBackground die hintergrundfarbe auf blau gestellt und mit clearRect den bildschirm eingefärbt. Anschließend ein rechteck in bildschirmgröße darübergelegt mit color 0,0,0,128 also ein transparentes rechteck, nun möchte ich einen kreis malen innerhalb dessen keine transparente farbe liegt und das mit clipping.

Hier mal der Code:

Java:
graphics2D.setBackground(Color.blue);
graphics2D.clearRect(0,0,getWidth(),getHeight());

graphics2D.setColor(new Color(0,0,0,128));
graphics2D.fillRect(0,0,getWidth(),getHeight());

Shape circle = new Ellipse2D.Double(100,100,100,100);

graphics2D.setClip(circle);
graphics2D.fill(circle);

Wie setzt man denn das Clipping ein?
Habe das auch schon mit AlphaComposite probiert,ohne Ergebnis.

Wäre für Hilfe dankbar.
 

mihe7

Top Contributor
ja, ich möchte ja eine transparente farbe über dem bau, aber nicht innerhalb des kreises.
Nochmal: aktuell zeichnest Du den Kreis mit der transparenten Farbe. Füll den einmal mit z. B. Color.YELLOW, dann wirst Du im Kreis keine Transparenz mehr finden. Vielleicht verstehe ich das Problem aber auch einfach immer noch nicht :)
 

Eichelhäer

Bekanntes Mitglied
ach ja sry hatte ich vergessen. Ja ist klar. Das geht natürlich so. Das ganze soll aber ein FOW werden. Statt der blauen Farbe habe ich verschiedene tiles. Deshalb dachte ich das mit der transparenz. Wenn ich im code oben vor dem clip einfach ne transparente farbe einstelle überschreibt er die stärkere nicht mit der schwächeren somit bleibt die alte farbe bestehen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Clipping Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben