首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >libgdx shaperenderer如何围绕矩形中心旋转矩形?

libgdx shaperenderer如何围绕矩形中心旋转矩形?
EN

Stack Overflow用户
提问于 2012-12-30 22:57:50
回答 2查看 7.5K关注 0票数 7

如何围绕矩形中心旋转矩形?我在ShapeRenderer中找到了旋转函数:

代码语言:javascript
运行
复制
void rotate(float axisX, float axisY, float axisZ, float angle);

但是它围绕0,0坐标旋转,我想要围绕它的中心旋转形状。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-01 08:03:46

如果您查看ShapeRenderer的documentation,第二个示例将向您展示如何将长方体的中心设置在{20,12,2}位置并使用translate绕z轴旋转。你需要做同样的事情。

代码语言:javascript
运行
复制
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();

希望这能有所帮助。

票数 10
EN

Stack Overflow用户

发布于 2015-11-26 04:02:20

使用此方法(official docs):

代码语言:javascript
运行
复制
public void rect(float x, float y,
                 float originX, float originY,
                 float width, float height,
                 float scaleX, float scaleY,
                 float degrees)

使用ShapeRenderer.ShapeType.Line或ShapeRenderer.ShapeType.Filled在x/y平面上绘制矩形。X和y指定左下角。originX和originY指定要围绕其旋转矩形的点。

像这样使用它:(x和y是矩形中心的点)

代码语言:javascript
运行
复制
renderer.rect(x-width/2, y-height/2, 
              width/2, height/2, 
              width, height, 
              1.0f, 1.0f, 
              myRotation);
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14091734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档