Schnell Kreis Kollisionserkennung

Ich versuche zu schreiben, eine Methode, die berechnet, ob sich zwei Kreise überschneiden. Ich habe kommen mit dem folgenden, und ich bin nur neugierig zu wissen, ob es trotzdem, könnte es sein, weiter optimieren.

private static boolean isCollision(Point2D p1, float r1, Point2D p2, float r2)
{
    float a,dx, dy;
    a = (r1+r2) * (r1+r2);
    dx = (float) (p1.getX() - p2.getX());
    dy = (float) (p1.getY() - p2.getY());

    if (a > (dx*dx) + (dy*dy))
    {
        return true;
    }
    return false;
}

InformationsquelleAutor der Frage Oli | 2009-03-30

Schreibe einen Kommentar