Как рассчитать силу между двумя контактирующими телами в box2d/jbox2d?

Я создаю смоделированную руку робота, используя jbox2d (порт box2d на Java). У меня есть Тело, которое есть рука, и я хотел бы знать, какие силы действуют на руку, когда она касается других тел.

Я знаю, что могу получить ContactList, но я не знаю, как рассчитать силы, действующие между рукой и контактирующими телами.

В идеале я хотел бы получить вектор силы между рукой и каждым контактирующим телом. Затем я могу посмотреть на них по отдельности или суммировать их, чтобы получить общие силы, действующие на руку.


person hqm    schedule 30.06.2013    source источник


Ответы (1)


Установите прослушиватель контактов и переопределите метод PostSolve. Второй параметр содержит нормальные и тангенциальные импульсы. Чтобы преобразовать импульс в силу, разделите его на шаг по времени.

F = p / dt
person Pavel    schedule 30.06.2013
comment
@hqm Если ответ правильный и соответствует вашим потребностям, вы должны проверить его как решенный;) - person Max Frai; 01.07.2013