如何围绕中心旋转矩形?我在ShapeRenderer中找到了旋转函数:
void rotate(float axisX, float axisY, float axisZ, float angle);
Run Code Online (Sandbox Code Playgroud)
但它围绕0,0坐标旋转,我希望围绕其中心旋转形状.
小智 10
如果您查看ShapeRenderer 的文档,第二个示例将向您展示如何在{20,12,2}位置设置框的中心,并使用translate围绕z轴旋转.你需要做同样的事情,例如
this.m_ShapeRenderer.begin(ShapeType.Rectangle);
this.m_ShapeRenderer.setColor(1.f, 1.f, 1.f, 1.f);
this.m_ShapeRenderer.identity();
this.m_ShapeRenderer.translate(20.f, 10.f, 0.f);
this.m_ShapeRenderer.rotate(0.f, 0.f, 1.f, 45.f);
this.m_ShapeRenderer.rect(x, y, 40.f, 20.f);
this.m_ShapeRenderer.end();
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助.