我在一个发动机中移动一个物体并恢复其位置,如X,Y
并使用:
Get Position:
body.getPosition().x;
AnimatedSprite.getX();
Set Position:
Sprite.setPosition(x,y);
但没有人为我服务。
答案 0 :(得分:3)
如果我正确理解您的问题是什么,您正在寻找的方法是Body.setTransform(float x, float y, float angle)
。请记住,Body坐标以米为单位,因此您必须将像素值除以PIXEL_TO_METER_RATIO
(通常为32)。
答案 1 :(得分:0)
您应该在方法onUpdate中的registerUpdateHandler中执行此操作。
示例:
body.registerUpdateHandler(new IUpdateHandler() {
@Override
public void reset() {
}
@Override
public void onUpdate(float pSecondsElapsed) {
body.getPosition();
body.setPosition();
}
});
答案 2 :(得分:0)
你可以这样做
yourBody.setTransform(new Vector2(x / 32,y / 32),0);