2016-11-07 2 views
0

Je crée un jeu libgdx où l'utilisateur peut créer une jointure à distance et un joint rotatif seul, donc ce que je fais chaque fois que 2 corps ont été touchés, ils sont tous deux ajoutés à un arrayList, puis quand un bouton est touché joint sera créé. Le problème est que les articulations sont toujours au centre, donc je me demandais s'il y avait un moyen d'obtenir l'emplacement du corps où il a été touché?, Puis définissez ces emplacements comme anchorPointA et anchorPointB.Obtenir l'emplacement où un corps Box2d a été touché?

Répondre

0

La première idée que je reçois est un écouteur Gesture, voir par exemple le GestureDetector.GestureAdapter(). Ensuite, vous implémentez la méthode touchDown dans laquelle vous pouvez obtenir les positions x, y touch. Pour voir si un corps est touché, vous pouvez utiliser la méthode Vector.dst(), mais n'oubliez pas de ne pas lancer de projet si vous en avez besoin.

Une autre idée pourrait être d'ajouter un InputListener à votre acteur (qui est connecté à votre corps), mais je ne l'ai pas encore essayé.