Hey Leute,
Habe ein einfaches Programm geschrieben indem zwei Kreise in einem Fenster an den "Wänden" (Fensterrand) abprallen und sich auch gegenseitig treffen können.
Jedoch ist die Kollision der beiden Kreise noch nicht ganz ausgereift. Es passiert schon etwas jedoch überlappen diese sich.
Ich habe die Kollision mit der Vektorrechnung gemacht. Der Radius eines Balls beträgt 25.
Hier der Code:
Wie gesagt prallen die schon voneinander ab jedoch zu spät, da der eine Kreis erst einmal unter dem anderen Kreis verschwunden sein muss. Was stimmt hier also nicht ?
Vielen Dank im Voraus
Habe ein einfaches Programm geschrieben indem zwei Kreise in einem Fenster an den "Wänden" (Fensterrand) abprallen und sich auch gegenseitig treffen können.
Jedoch ist die Kollision der beiden Kreise noch nicht ganz ausgereift. Es passiert schon etwas jedoch überlappen diese sich.
Ich habe die Kollision mit der Vektorrechnung gemacht. Der Radius eines Balls beträgt 25.
Hier der Code:
Java:
double ab1 = (Var.xOval1 + 50) - (Var.xOval2 + 50);
double ab2 = (Var.yOval1 + 50) - (Var.yOval2 + 50);
double ab3 = Math.sqrt(Math.pow(ab1, 2) + Math.pow(ab2, 2));
if (ab3 <= 50){
Var.xOval1dir *= -1;
Var.yOval1dir *= -1;
}
Wie gesagt prallen die schon voneinander ab jedoch zu spät, da der eine Kreis erst einmal unter dem anderen Kreis verschwunden sein muss. Was stimmt hier also nicht ?
Vielen Dank im Voraus