1

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

为了让它显示,我将它硬编码为 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);
    }
}
4

1 回答 1

0

看看中的Fixturesorg.jbox2d.dynamics。它用于将碰撞形状附加到身体。只需查看源代码,我猜您就可以使用它Shape shape = body.m_fixtureList.m_shape来获取身体的第一个形状。不过,您可能会想要使用循环,除非您绝对确定您会更新将两个形状组合成一个实体。

于 2013-10-13T16:09:23.267 回答