Как определить, находится ли объект в покое? - PullRequest
2 голосов
/ 24 июля 2011

Использование библиотеки физического помощника .

Я пытаюсь выяснить, как определить, находится ли физический объект в покое.Кто-нибудь знает, как это сделать, или есть идеи о том, что я могу сделать?

Примером сценария является надувной мяч, который можно подбирать и бросать.Я попытался создать таймер, который измеряет каждый отдельный отскок от события столкновения с полом и определяет, находится ли объект в состоянии покоя на основе этого, но это не работает, если пользователь перемещает мяч влево и вправо.

Есть предложения?

Ответы [ 3 ]

2 голосов
/ 25 июля 2011

Если у вас есть доступ во время выполнения к базовому Farseer Body, то у вас также должен быть доступ к свойству LinearVelocity, которое вы можете проверить на 0 звездную величину.

1 голос
/ 24 июля 2011

Это довольно простые вещи.Ваш физический объект должен быть экземпляром некоторого класса, который содержит информацию о положении объекта, скорости и т. Д. И т. Д. В любой момент времени вы должны иметь возможность проверить скорость объекта и, очевидно, если его скорость == 0, в покое.

0 голосов
/ 24 июля 2011

До сих пор я придумал простой метод.Создание двух переменных класса (Vector2 currentPosition, Vector2 previousPosition), а затем создание диспетчерского таймера, который запускает время от времени, и с использованием следующего метода тиков:положение шариков в воздухе поднимается и затем опускается в том же положении (очень маловероятно) и с очень высокой частотой тиканья может иногда неожиданно захватывать одно и то же положение, при медленной частоте тикания требуется время для определенияобъект находится в состоянии покоя, у кого-нибудь есть лучший метод?

...