0
Quelqu'un
sur un forum que je vais dit que je ne devrais pas utiliser Rectangle.intersects
pour ma détection de collision, et j'utiliser cet algorithme à la place:Différence entre algorithme d'intersection et Rectangle.intersects (rectangle r)
boolean rectangleIntersects(float rect1x, float rect1y, float rect1w,
float rect1h, float rect2x, float rect2y,
float rect2w, float rect2h)
{
return (rect1x + rect1w >= rect2x &&
rect1y + rect1h >= rect2y &&
rect1x <= rect2x + rect2w &&
rect1y <= rect2y + rect2h);
}
Mais n'est pas l'algorithme Rectangle.intersects
différent, et mieux que cela? Excepté que votre algorithme utilise float
au lieu de double
et inclut des conditions d'égalité pour les limites.
Vous pouvez trouver [cette question] (http://stackoverflow.com/questions/115426/algorithm-to-detect-intersection-of-two-rectangles) utile pour développer un meilleur algorithme d'intersection. – jball
Ont-ils donné une raison à la suggestion? – jzd
Vous avez dupliqué des noms de paramètres dans la signature de votre méthode. J'ai modifié mon hypothèse en fonction de ce que vous aviez prévu. – jball