Hallo, ich will zwei Punkte (jeweils den Mittelpunkt) meiner Objekte der Klasse
mit einer Linie verbinden und dies zeichnen. Das klappt alles, nur wird, da ja der Mittelpunkt genommen wird, die Linie in den Kreis reingezeichnet. Und ich weiß nicht, wie ich den geeigneten Punkt dazu finden sollte. Ich habe an etwas gedacht wie:
Ich könnte natürlich auch, weil die Linie nur für eine Visualisierung da ist und nichts mit dem Spiel an sich zu tun hat, einfach den Kreis in der jeweiligen Farbe drüber zeichnen, nur ist das ja nicht gerade schön gemacht. Wie soll ich das am Besten machen?
Danke im Voraus
EDIT:
Der Kreis hat methoden wie
falls irgendetwas hilft.
Java:
Circle
Java:
public Point getNearestPointTo(Circle c){
return null; // weiß echt nicht wie
}
Danke im Voraus
EDIT:
Der Kreis hat methoden wie
Java:
public int radius(){
return size / 2;
}
public int getX(){
return x;
}
public int getY(){
return y;
}
public Point getCenter(){
return new Point(getX() + radius(), getY() + radius());
}
public void setCenter(Point center){
this.x = center.x - radius();
this.y = center.y - radius();
}
public boolean collision(Circle c){
return c.getCenter().distance(getCenter()) <= radius() + c.radius();
}
public Shape getShape(){
return new Ellipse2D.Double(x, y, size, size);
}
public static boolean collision(Circle c1, Circle c2){
return c1.collision(c2);
}
Zuletzt bearbeitet: