我如何获得Box2d体型

时间:2013-10-12 23:53:36

标签: java processing jbox2d

我可以很容易地获得身体的位置,但假设它是一个盒子,我如何确定盒子的坐标以便我可以显示它?

为了让它显示,我将其硬编码为10 x 10但是如果我正在绘制墙壁,它应该很高,而移动平台应该更小更宽。

public void draw() {
    if (bodySocket.isConnected()) {
        world = JSONObject.parse(getWorld());
    } else { System.exit(1); }
    background(100);
    Iterator<?> keys = world.keyIterator();
    String key;
    JSONObject body;
    while (keys.hasNext()) {
        key = (String)keys.next();
        body = world.getJSONObject(key);
        rectMode(PApplet.RADIUS);
        fill(255, 100);
        rect(body.getFloat("x"), fieldBottom - body.getFloat("y"), 10, 10);
    }
}

1 个答案:

答案 0 :(得分:0)

查看Fixtures中的org.jbox2d.dynamics课程。它用于将碰撞形状附加到物体上。 只需查看源代码,我猜您可以使用Shape shape = body.m_fixtureList.m_shape来获取正文的第一个Shape。你可能想要使用一个循环,除非你绝对确定你会将两个形状组合成一个整体。