Farbe ändern bei Überlappung

Status
Nicht offen für weitere Antworten.

flashdog

Bekanntes Mitglied
Hallo,
ich habe momentan 2 Bälle die sich auf einander zu bewegen.

Code:
import java.awt.*;
import javax.swing.*;

public class BallRoom extends JApplet implements Runnable {
  private final int WIDTH = 350;
  private final int HEIGHT = 300;
  private PaintSurface canvas;
  Thread th;

  public void init() {   	
    this.setSize(WIDTH, HEIGHT);
    canvas = new PaintSurface();
    this.add(canvas, BorderLayout.CENTER);
  }
  
  
  public void start() {
      th = new Thread(this);
      th.start();
  }

  public void run() { 
    while (true){
      repaint();
      try {
        Thread.sleep(100);
      }
      catch (InterruptedException ex){
      }
    }
  }

  public void update(Graphics g)
  {
    paint(g);
  }
}


Code:
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.Shape;
import java.awt.geom.Ellipse2D;
import javax.swing.JComponent;

class PaintSurface extends JComponent {
  int ball1_x_pos = 0; // the starting X position
  int ball1_y_pos = 150; // the starting Y position
  int ball2_x_pos = 60; // the starting X position
  int ball2_y_pos = 150; // the starting Y position
  
  int d = 20; // the diameter of the ball

  public void paint(Graphics g) { 
    Graphics2D g2 = (Graphics2D)g;
    g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
        RenderingHints.VALUE_ANTIALIAS_ON);
    ball1_x_pos++; // move ball1 right one pixel
    ball2_x_pos--; // move ball1 left one pixel
    Shape ball1 = new Ellipse2D.Float(ball1_x_pos, ball1_y_pos, d, d);
    Shape ball2 = new Ellipse2D.Float(ball2_x_pos, ball2_y_pos, d, d);
    g2.setColor(Color.RED);
    g2.fill(ball1);
    g2.fill(ball2);
  }
}

Wie lässt sich die Farbe automatisch ändern wenn sich die Bälle überlappen und wie ändert sich die Farbe der Bälle in vorhergehenden Zunstand nach der Überlappung? Gibt es irgendwelche vorgefertige Funktion die eine Überlappung erkennt?

Viele Gruesse
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
R Problem bei Farbe ändern/4Gewinnt Spiele- und Multimedia-Programmierung 5
truesoul Picking und Farbe ändern Spiele- und Multimedia-Programmierung 3
E Durch Klick auf den JButton will ich die Farbe ändern? Spiele- und Multimedia-Programmierung 8
DEvent [2D] Farbe bestimmten Pixels eines Bildes ändern Spiele- und Multimedia-Programmierung 3
dummycoders Android Studio - Button ändert Farbe erst nach Delay? Spiele- und Multimedia-Programmierung 5
W Java3D: Farbe von Objekten stimmt nicht mit übergebenem RGB-Wert überein Spiele- und Multimedia-Programmierung 9
G BufferedImage -> Farbe wechselt willkürlich Spiele- und Multimedia-Programmierung 15
M g.setColor erzeugt falsche Farbe? Spiele- und Multimedia-Programmierung 5
D Text3D Farbe aendern Spiele- und Multimedia-Programmierung 2
R Transparente Farbe von (Buffered) Image Spiele- und Multimedia-Programmierung 10
O transparente farbe in Image mit Graphics Spiele- und Multimedia-Programmierung 8
F QuadArray, Farbe auf beiden Seiten? Spiele- und Multimedia-Programmierung 4
M Minecraft Minecraft 1.12.2 Plotrand ändern Spiele- und Multimedia-Programmierung 1
I Minecraft: Craftingrecipe für Braustand ändern Spiele- und Multimedia-Programmierung 9
K FIguranimation bei Laufrichtungen ändern?! Spiele- und Multimedia-Programmierung 12
M Wie kann man die Auflösung eine fertigen Programms ändern? Spiele- und Multimedia-Programmierung 1
J Unicode Font Größe ändern Spiele- und Multimedia-Programmierung 2
T Bilder einbinden, bzw. ändern Spiele- und Multimedia-Programmierung 5
F LWJGL: Textur ändern mit GL11.readPixels Spiele- und Multimedia-Programmierung 5
F Bewegungsrichtung ändern Spiele- und Multimedia-Programmierung 4
B Bilder in GUI ändern ohne repaint() Spiele- und Multimedia-Programmierung 6
P Prozess Lautstärke ändern Spiele- und Multimedia-Programmierung 4
H BranchGroup ändern Spiele- und Multimedia-Programmierung 4
U Value in Programm ändern? Spiele- und Multimedia-Programmierung 5
aze Java3d:Helligkeit von Shape3D ändern Spiele- und Multimedia-Programmierung 2
M Variable die eine Klasse enthält ändern Problem Spiele- und Multimedia-Programmierung 16
R Nachträgliches ändern von Vertex Arrays. Wie geht das? Spiele- und Multimedia-Programmierung 3
U Canvas Ursprung ändern Spiele- und Multimedia-Programmierung 11
S Dimensionen/Maßstab des J3D universe ändern Spiele- und Multimedia-Programmierung 8
U JPG in größe ändern und speichern Spiele- und Multimedia-Programmierung 3
N Bild im Panel ändern Spiele- und Multimedia-Programmierung 3
C Text in/auf Text2D ändern Spiele- und Multimedia-Programmierung 4
I Kameraposition in Java3d ändern Spiele- und Multimedia-Programmierung 13
M Binärbaum ohne Überlappung zeichnen Spiele- und Multimedia-Programmierung 3

Ähnliche Java Themen

Neue Themen


Oben