Je suis nouveau sur Python et j'ai un programme qui a 2 classes, l'une est essentiellement un rectangle et l'autre est essentiellement un cercle. Je les Dessinés en utilisant l'Canvas
en Tkinter
de la manière suivante:Python: Comment détecter la détection de forme visible dans Tkinter
def draw(self):
self.canvas.delete("all")
self.rect.draw(self.canvas)
self.ball.draw(self.canvas)
La classe Ball
a ses variables de localisation et les variables de diamètre et la classe Rect
a ses variables de localisation et dimension.
Je me demande comment je détecte la collision entre ces deux "formes". Je sais que l'un était de traiter le Ball
comme un carré et de faire une collision rectangle de base, mais je voudrais savoir comment être précis.
Je me demandais aussi s'il y avait quelque chose de similaire en Python à la façon dont la collision de forme peut être faite en Java. Dans mon jeu Java J'utilise le code suivant pour détecter une collision entre les 2 Shape
s:
public boolean collisionCheck(Shape a, Shape b) {
Area aA = new Area(a);
Area aB = new Area(b);
aA.intersect(aB);
return !aA.isEmpty();
}
Y at-il quelque chose de semblable à cette solution simple en Python? Et sinon comment je ferais une collision de cercle-rectangle en Python?
Merci pour toute aide