2013-11-24 42 views
0

如何更改測試牀世界輸出的座標系?謝謝。JBox2d測試牀旋轉世界

http://postimg.org/image/71d6fner5/

http://postimg.org/image/upx9oo0oh/

我決定的問題。

我重寫DebugDraw並在構造函數中將YFlip設置爲false。

viewportTransform.setYFlip(false);

public class EnginePanelJ2D extends JPanel implements TestbedPanel { 
    // (other code from org.jbox2d.testbed.framework.j2d.TestPanelJ2D) 
    public EnginePanelJ2D(TestbedModel argModel) { 
     draw = new EngineDebugDraw(this); 
     // other code 
    } 
} 

EngineDebugDraw

public class EngineDebugDraw extends DebugDraw { 
    // (other code from org.jbox2d.testbed.framework.j2d.DebugDrawJ2D) 
    public EngineDebugDraw(EnginePanelJ2D argTestPanel) { 
     // other code 
     viewportTransform.setYFlip(false); 
    } 
} 

多數民衆贊成

回答

0

你可以通過視口變換矩陣搞亂改變對視一切。這就是爲什麼它在那裏。 例如,使用Mat22.createRotationMatrix(或類似的東西),然後做viewportTransform.mulBy(Mat22.createRotationMatrix(__))如果你想旋轉視口。 你也可以轉換它等