c# - Farseer physics (Box2D) - 夹具绕点旋转

标签 c# xna box2d farseer

我在 Farseer 物理引擎(使用 XNA)中旋转夹具时遇到了一些麻烦。基本上,我有一个固定装置,设置如下:

 private void setUpPhysics(World gWorld, Vector2 position)
    {
        body = new Body(gWorld);
        body.BodyType = BodyType.Dynamic;
        carFixture = FixtureFactory.AttachRectangle(ConvertUnits.ToSimUnits(21f), ConvertUnits.ToSimUnits(35f), 5f, ConvertUnits.ToSimUnits(position), body);
        carFixture.Restitution = 4f;
        carFixture.Friction = 5f;
        carFixture.Body.AngularDamping = 1f; 
        carFixture.Body.LinearDamping = 1f;
    }

然后我使用代码旋转

carFixture.Body.Rotation -= 0.01f;

效果很好。问题是,它总是围绕矩形的左上角旋转,而我需要它围绕中心旋转。我将如何围绕它的中心旋转夹具? (我为我的愚蠢道歉——我是 Farseer/Box2D 的新手,我毫不怀疑这是这个问题的主要原因,但我已经在互联网上搜索了好几个小时,但一无所获。)

最佳答案

我自己解决了这个问题 - 原来 body 绕着它的中心旋转,但是附着在它上面的纹理绕着它的角旋转

关于c# - Farseer physics (Box2D) - 夹具绕点旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6563136/

相关文章:

c# - 在方法中重写时的数组参数不会在其外部更改

javascript - 我可以通过ajax访问不同位置的同名 Controller 吗?

java - 多个夹具的 Box2D 原点

java - 将 Box2D 主体创建与实体组件系统集成

silverlight-4.0 - Windows Phone 7 开发资源

ios - Box2d Body在cocos2d-x中的运动

c# - 如何在 C# 中动态转换泛型列表?

c# - Unity3D - 选择哪种网络解决方案?

c# - 检查一个点是否在旋转的矩形内

windows - 为 XNA 游戏实现基于 XML 的简单脚本语言