Bonjour.
Je sais que au vu du nom du topic, vous allez me dire que cela a déjà été traité maintes et maintes fois, mais voilà, avec moi ça marche pas
Voici ma configuration:
J'ai une classe Car contenant des Catpors. Ces captors sont hérités des classes Drawable et Transformable.
Donc tout va pour le mieux, je fais des rotations à mes capteurs, toujours OK.
Seulement, j'ai voulu détecter la collision entre un des ces capteurs et un RectangleShape.
Du coup, j'ai du aller dans ma class Captor afin de créer une fonction pour gérer les collisions.
Dans celle-ci, j'y ai mis en gros:
if(captor.getGlobalBounds().intersect(obstacle.getGlobalBounds())){
cout<<"An obstacle hits a captor"<<endl;"
}
Je me suis apperçu que celà ne marchait pas vis à vis des transformations que j'avais appliqué à mon capteur.
Je teste donc:
if(captor.getTransform().transformRect(captor.getGlobalBounds()).intersect(obstacle.getGlobalBounds())){
cout<<"An obstacle hits a captor"<<endl;"
}
Comme j'ai vu sur de nombreux topics, pour affecter à mon capteur les transformations, mais celà ne marche toujours pas. Enfin plutôt, ça détecte des collisions, mais plus loin!
Merci pour toute aide que vous pourrez me fournir!
P-S: Mon captor est un CircleShape dans le code que je vous ai donné.